iPhone开发备忘学习笔记是本文要介绍的内容,主要集合了iphone开发中几个案例的实现,来看本文详细内容介绍。
1、IOS开发中关于KMapView自定义calloutM
在做ios上面的的地图应用的时候,有些时候需要自定义callout,找了很久,在国外网站上找到了一篇文章,讲的就是自定义callout,网址:http://blog.asolutions.com/2010/09/building-custom-map-annotation-callouts-part-1/,但是这篇讲的有点复杂,新手不太容易看懂,并且有些时候我们不需要这么复杂的实现,下面我就讲一下原理。
其实说的是自定义callout,其实是通过两个annotations来实现的,假设我们在地图上面放置一个A,我们可以在相应选择A之后在插上一个B,是B的偏移位置刚刚好在A的上面,就形成了callout的效果。
主要是要实现地图的两个代理方法:
- mapView:didSelectAnnotationView:
- mapView:didDeselectAnnotationView:
在***个代理方法中中插入B,在第二个方法中移除B。大概自定义的callout就是这样实现的,有时间的话自己写一个~~
2、iphone开发利用宏来确定是在仿真器或者真机中运行
- #if TARGETIPHONE_SIMULATOR
- #endif
- #if !(TARGET_IPHONE_SIMULATOR)
- #endif
当在仿真器中的时候会编译1中的代码。当在真机当中时会编译2中的代码。
3、iphone应用开发中关于Nib文件总结
剖析一个nib file。
当在运行时加载一个nib 文件,我们得到的只是此nib file的一个复制品。nib load代码会实例化对象,配置他们,并建立你在IB中建立的连接。
interface对象:包括可视的和不可视的。可视的一般是一些view window之类的。不可视的是一些view controller之类的。
一个nib 文件最重要的一个对象就是Files owner对象。和其他的不同,Files owner对象是一个代理对象,当nib file加载的时候其不会创建,相反,在代码中创建此对象,并将其传递给nib load 代码。此对象之所以重要是因为他连接了应用程序代码和nib file的内容。
Frist Responder是一个代理对象表示应用程序动态相应链的***个对象。因为一个应用程序的相应链在设计的时候是不能确定的。当从一个nib file加载到内存中,我不能什么都不用做对于First Responder。 AppKit and UIKit frameworks 会根据应用程序当前的配置自动的设置和管理the first responder。
4、iphone开发----获得其他ipa程序的图片资源(从ipa中提取png资源)
在我们开发的过程中,有些时候会觉得别人的写得程序有些图片资源比较好,想拿来用用,但是当我们把ipa解压之后是不能看png资源的,因为apple再把ipa打包打包之前会将png资源以一种特殊的格式存储,所以如果想要看ipa的png图片,就要转换了,详细的解释请看iPhone PNG Images Normalizer Python。本文只讲方法,要用到一个python转换脚本。
使用很简单,把ipin.py脚本复制到解压的ipa程序的目录下,在命令行切换到你解压的ipa程序的目录下运行python ipin.py就可以了,这样所以的png将被转换成通常的png格式,就能看到了。
python脚本下载地址:http://u.115.com/file/aq2hi65i
小结:iPhone开发备忘学习笔记的内容介绍完了,希望通过本文的学习能对你有所帮助!