当前位置:编程学习 > wap >>

IOS开发学习:MKMapView自定义CalloutView

 

 

标记一个位置点的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就大功告成了。。

 

例子效果如下:

 


 

\
补充:移动开发 , IOS ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,