提问人:emsiloader 提问时间:4/9/2021 更新时间:4/10/2021 访问量:81
从 MKMapView 上的 CLLocationCoordinate2D 数组添加点不起作用
adding points from a CLLocationCoordinate2D array on MKMapView doesn't work
问:
我正在使用以下代码在按钮单击时将存储的引脚点添加到myMKMap;
func addPoint(){
var count: Int = 0
repeat {
let pin = MKPointAnnotation()
pin.coordinate = CLLocationCoordinate2D(mypointList[count])
pin.title = placenames[count]
pin.subtitle = placedetails[count]
mymap.addAnnotation(pin)
count += 1
}
while count < 3
mypointList[] 如下所示;
var mypointList = [CLLocationCoordinate2D(latitude: 37.19722, longitude: 25.82189),
CLLocationCoordinate2D(latitude: 37.20103, longitude: 25.83009),
CLLocationCoordinate2D(latitude: 37.20092, longitude: 25.81781),
CLLocationCoordinate2D(latitude: 37.19989, longitude: 2259.82449)]
var placenames: [String] = ["sample place 1", "sample place 2", "sample place 3", "sample place 4"]
var placedetails: [String] = ["sample place detail 1", "sample place detail 2", "sample place detail 3", "sample place detail 4"]
但是当我运行应用程序时没有添加引脚。
顺便说一句,当替换为重复循环中的“pin.coordinate = CLLocationCoordinate2D(mypointList[count])”行时,以下代码有效;
pin.coordinate = CLLocationCoordinate2D(latitude: 37.1972, longitude: 25.2744)
数组有问题吗?
谢谢
答:
0赞
emsiloader
4/9/2021
#1
然而,这听起来像是一个有点奇怪的解决方案,我已经通过替换以下代码解决了我的问题:
pin.coordinate = CLLocationCoordinate2D(latitude: mypointList[count].latitude as! CLLocationDegrees, longitude: mypointList[count].longitude as! CLLocationDegrees)
它现在可以正确显示引脚。
评论