如何在常规UIView(而不是地图上)上使用MKPinAnnotationView

时间:2009-07-20 15:51:58

标签: iphone mapkit

我正在编写一个包含自定义地图的iPhone应用程序 - 我自己的地图图片,而不是Google的图片。图像不是很大,所以我没有使用像RouteMe这样的库,而只选择带有嵌入图像的UIScrollView(地图)。

我的问题是:可以在自定义UIView之上重复使用Apple的MKPinAnnotationView类,以便引脚交互与MapKit一样吗?到目前为止,我已经想出了如何在我的地图中添加一个引脚并定位它,但我无法弄清楚如何让用户与它进行交互 - 即弹出描述气泡。

有什么想法?非常感谢。

2 个答案:

答案 0 :(得分:0)

你可能可以制作一个并使用添加子视图来显示它,你可能需要做一些工作才能让它显示你想要它的位置,因为你给出的坐标是用来工作的mkmaps

答案 1 :(得分:0)

您是否从MKAnnotationView看了这个方法:

  • (void)setSelected:(BOOL)选中动画:(BOOL)动画

这是公开曝光的唯一可能显示/隐藏标注气泡的方法。除此之外,你必须对课程进行逆向工程并开始探索。

但是,我强烈建议对这些类进行逆向工程并使用未公开的方法。 Apple没有承诺保持向后兼容性,如果他们发现你使用私有方法,他们会从商店中踢你的应用程序。

顺便说一句,完全披露,这些是Apple的setSelected:animated:

的文档说明
  

<强>讨论   你不应该调用这种方法   直。一个MKMapView对象调用   这种方法响应用户   与注释的互动。