现在的位置: 首页 > 综合 > 正文

IOS开发学习:MKMapView自定义CalloutView

2013年06月02日 ⁄ 综合 ⁄ 共 708字 ⁄ 字号 评论关闭

自定义的过程这篇博客写的很详细:http://blog.csdn.net/mad1989/article/details/8794762


标记一个位置点的view ----》marker或者pin

点击marker后弹出的view ---》CalloutView

marker和calloutView都是一个annotation,一个annotation对应一个view即markerView和calloutView,所以自定义callout view时先自定义两个view对应的annotation分别为:CustomPinAnnotation和CustomCalloutAnnotation,pinAnnotation的弹出view用系统的就可以了,一般只要换一个image,再自定义一个calloutAnnotation的弹出view:CustomCalloutView


基本思路如下:

当调用MKMapView的andAnnotation添加一个marker(CustomPinAnnotation)时,系统会回调MKMapView的delegate中的viewForAnnotation方法,返回标记要显示的marker的view(return 一个系统的)。当点添加的marker时,系统会调delegate中的didSelectAnnotationView方法,我们再调用addAnnotation添加一个CustomCalloutAnnotation,调了这个方法后,系统又会回调viewForAnnotation方法,我们再返回我们自定义的CustomCalloutView就大功告成了。。

例子效果如下:



代码在资源里

抱歉!评论已关闭.