【问题标题】:how to let users of an app in mapview drop multiple pins?如何让地图视图中的应用程序用户删除多个图钉?
【发布时间】:2013-08-09 12:12:42
【问题描述】:

如何编写一个地图视图,用户可以在其中放置多个图钉、进行注释和添加图片?

我知道如何在 Xcode 中编写地图视图以及如何放置预设引脚,但是我希望能够编写更复杂的代码,因为它与我希望创建的应用程序相关!

1:我如何让应用程序的用户放置多个引脚来指定某个位置?

2:一旦用户放下了一个图钉,我希望他能够添加注释和图片?

我对此进行了广泛的研究,虽然我已经找到了如何将基本地图编码到应用程序中,但我无法编写后续部分!

感谢您阅读我的问题,并且非常感谢您提供的任何建议。如果您认为有一个有用的 youtube 视频或博客可以帮助我,请把它放在底部,我会浏览它!

【问题讨论】:

    标签: iphone ios xcode map mkmapview


    【解决方案1】:

    首先制作一个实现<MKAnnotation>协议的Annotation类:

    @interface Annotation : NSObject <MKAnnotation>
    {
        CLLocationCoordinate2D location;
        NSString *title;
        NSString *subtitle;
        NSString *otherInfo;
        UIImage *image;
        // etc...any other info you want to include with your annotation
    }
    

    然后当你想放下一个别针时:

    -(void)dropPin:(CLLocationCoordinate2D *)location (NSString *)title (NSString *)subtitle (NSString *)otherInfo (UIImage *)image
    {
        Annotation *pin = [Annotation annotationWithCoordinate:location];
        pin.title = title;
        pin.subtitle = subtitle;
        pin.otherInfo = otherInfo;
        pin.image = image;
        [self.mapView addAnnotation:pin];
    }
    

    您可能还希望将丢弃的图钉存储在一个数组或其他东西中,以便您可以跟踪它们并在以后引用它们。

    查看 MapKit documentationMKAnnotation 协议以获取更多信息和示例。另请阅读this tutorial,它很好地概述了如何使用 MapKit 对象和协议,包括注释。

    【讨论】:

    • 谢谢!我会设置一个数组来存储丢弃的引脚吗?
    • 在某处创建一个 NSMutableArray - 可能是地图视图控制器中的一个实例变量。然后在上面的 dropPin 方法中,直接做:[pinArray addObject:pin];
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多