gpt4 book ai didi

swift - 尝试将位置数据从 Firebase 显示到 MapKit

转载 作者:行者123 更新时间:2023-11-30 11:19:23 26 4
gpt4 key购买 nike

搜索了很多这个问题,但找不到简单的答案。

我希望能够从 Firebase 数据库读取位置数据并将其作为注释显示在 MapKit 上。

你能帮忙吗?

现在我可以显示硬编码的注释,但无法弄清楚如何读取数据库,然后创建一个循环来显示 map 上的所有注释。

这是显示注释的代码。我想用 Firebase 的相关数据填充标题、纬度、经度。Firebase数据库如下:Firebase Database

**应用程序已与 Firebase 连接!

let points = [
["title": , "latitude": , "longitude": ],
]
for point in points {
let annotation = MKPointAnnotation()
annotation.title = point["title"] as? String
annotation.coordinate = CLLocationCoordinate2D(latitude: point["latitude"] as! Double, longitude: point["longitude"] as! Double)
mapView.addAnnotation(annotation)
}

根据建议,我编辑了代码,现在是这样的:

let ref = Database.database().reference()
ref.child("x-database-alpha/name").observe(.childAdded, with: { (snapshot) in

let title = (snapshot.value as AnyObject?)!["Title"] as! String?
let latitude = (snapshot.value as AnyObject?)!["Latitude"] as! String?
let longitude = (snapshot.value as AnyObject?)!["Longitude"] as! String?

let annotation = MKPointAnnotation()
annotation.coordinate = CLLocationCoordinate2D(latitude: (Double(latitude!))!, longitude: (Double(longitude!))!)
annotation.title = title
self.mapView.addAnnotation(annotation)
})

检查Exact Firebase Database

现在代码没有错误,但没有显示注释!

最佳答案

示例代码:

let ref = Database.database().reference()
ref.child("name").observe(.childAdded, with: { (snapshot) in

let title = (snapshot.value as AnyObject!)!["Title"] as! String!
let latitude = (snapshot.value as AnyObject!)!["Latitude"] as! String!
let longitude = (snapshot.value as AnyObject!)!["Longitude"] as! String!

let annotation = MKPointAnnotation()
annotation.coordinate = CLLocationCoordinate2D(latitude: (Double(latitude!))!, longitude: (Double(longitude!))!)
annotation.title = title
self.map.addAnnotation(annotation)
})

关于swift - 尝试将位置数据从 Firebase 显示到 MapKit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51448696/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com