【问题标题】:How does WatchKit handle multiple map annotations on the same map?WatchKit 如何处理同一张地图上的多个地图标注?
【发布时间】:2015-02-07 01:27:25
【问题描述】:

在 WatchKit 中,WKInterfaceMap 的 documentation 指定:

“点击地图会在用户的 Apple Watch 上启动地图应用程序,然后 显示相应的位置。

但是:我想在地图上显示 多个 地图注释 - 有没有办法指定点击地图时将在 Maps.app 中显示哪些地图注释?

【问题讨论】:

    标签: ios watchkit


    【解决方案1】:

    目前尚不清楚当 Apple Watch 从 WKInterfaceMap 转换到 Apple 的本地地图应用程序时究竟会发生什么。

    试试WatchKit Developer Forums,正好适合这个问题!

    【讨论】:

      【解决方案2】:

      目前在 WatchOS 2 中(至少),点击 WKInterfaceMap 将打开 Watch 的地图应用程序,其中包含获取前往位于 WKInterfaceMap 中心点的位置的路线选项。在查看到此位置的这些路线时,它将标有红色大头针注释。

      您的任何自定义注释都不会显示在 Watch 的地图应用中。

      【讨论】:

        【解决方案3】:

        您可以使用以下方法添加多个注释。根据 Apple 文档,目前手表应用的地图上只能显示 5 个注释

        addAnnotation:withPinColor

        addAnnotation:withImageNamed:centerOffset:

        addAnnotation:withPinColor:

        这是一个示例代码,它显示了 2 个注释:

        CLLocationCoordinate2D mapLocation1 = CLLocationCoordinate2DMake(37.787730, -122.403370);
        
        CLLocationCoordinate2D mapLocation2 = CLLocationCoordinate2DMake(37.794873, -122.397892);
        
        //
        MKCoordinateSpan coordinateSpan = MKCoordinateSpanMake(0.1, 0.1);
        
        // Other colors include red and green pins
        [self.map addAnnotation:mapLocation1 withPinColor: WKInterfaceMapPinColorPurple];
        
        [self.map addAnnotation:mapLocation2 withPinColor: WKInterfaceMapPinColorRed];
        
        [self.map setRegion:(MKCoordinateRegionMake(mapLocation, coordinateSpan))];
        

        【讨论】:

        • 感谢您的精彩回答,但这并不能回答我的问题 - 我在问当地图被多个注释点击时会发生什么行为。
        猜你喜欢
        • 2010-10-10
        • 1970-01-01
        • 2021-08-03
        • 2016-02-09
        • 2013-11-11
        • 2012-01-27
        • 1970-01-01
        • 2021-02-02
        • 2019-01-05
        相关资源
        最近更新 更多