ios - 从 XML/数组创建 map 图钉

标签 ios xml swift mapkit

我目前正在开发一个项目,该项目从 XML 文件中获取一堆交通摄像头并在应用程序中显示它们。我的 Tableview 已启动并运行,工作完美(单击单元格,打开详细 View 并显示流量图像)。但是,我想在 map 上显示相机位置,以便用户可以按下他们想要查看相机的图钉(并将它们发送到详细 View 以显示相机)。

我不知道如何进行这项工作,有什么想法吗?

我得到了经度和纬度坐标。 XML 文件链接:http://webkamera.vegvesen.no/metadata

它是挪威语,但 lengdegrad = 经度,breddegrad = 纬度。

这就是我想要实现的目标(Photoshop截图):https://gyazo.com/93d885606efd6e6369018243b64d47e8

我不知道这是问问题的正确地方,但如果您知道的话请帮忙:-)

提前致谢

最佳答案

使用 XML 数据:

将 XML 文件添加到您的项目中并使用 NSXMLParser阅读它。

要在 map 上创建注释:

基于MKAnnotationView创建注释类,类似这样的东西:

class Annotation: NSObject, MKAnnotation {
    var coordinate: CLLocationCoordinate2D
    var title: String?
    // optionally add subtitle

    init(coordinate: CLLocationCoordinate2D, title: String) {
        self.coordinate = coordinate
        self.title = title

    } 
}

要创建注释并将其添加到 map ,请为 XML 文件中的每个解析项创建一个注释并将其添加到 map 。像这样的东西,取决于解析数据的格式。假设您将数据存储在名为“camera”的数组中:

for camera in cameras {
    let coord = CLLocationCoordinate2DMake(camera.latitude, camera.longitude)
    let annotation = Annotation(coordinate: coord, title: camera.title)                      
    mapView.addAnnotation(annotation)
}   

关于ios - 从 XML/数组创建 map 图钉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32038098/

相关文章:

ios - 将 UIViewController 放在 XIB 中会使约束与框架不一致

c# - .NET 中对 XML 字符串进行编码以发布到 URL 的正确方法是什么?

php - CakePHP 站点地图错误

ios - 使用 Codable 与 Swift 归档

ios - 如何在捕获图像时在相机屏幕中添加任何自定义图像?

ios - 实例化 AVCaptureDeviceInput 时出错

ios - Xamarin.iOS 无法编译项目 "app was built for iOS 10.2 which is newer than this simulator"

iphone - 如何使用导航 Controller 和 View Controller 处理多点触摸

xml - 访问祖先的两个值的比较

ios - Swift Sprite-kit 移动对象