我正在尝试创建一个自定义图钉,该图钉的标签中心会随每个图钉而变化。标签将只是引脚号,所以如果我有8个引脚,则每个引脚的中心都将有一个数字,即第一个引脚将具有1,第二个引脚将具有2,依此类推。问题是出现了常规引脚,而不是自定义图钉。

override func viewDidLoad() {
    super.viewDidLoad()
    mapView.delegate = self
    loadPins()
}

func loadPins() {
        let annotation = CustomPin()
        annotation.coordinate = CLLocationCoordinate2D(latitude: 30.2531419, longitude: -97.78785789999999)
        mapView.addAnnotation(annotation)
    }


class AnView: UIView {


    @IBOutlet weak var countLabel: UILabel!
    @IBOutlet weak var pinImage: UIImageView!


    override func draw(_ rect: CGRect) {
        //Draw function
    }

}

class CustomPin: MKPointAnnotation {
    var pin = AnView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))

}

最佳答案

注释(您的CustomPin)获取纬度/经度值。

注释视图(您的代码不显示)获取您要在地图上显示的标签或图像。

由于注释中的Maps and Location Programming Guide在Objective-C中提供了其所有示例,因此您可能还希望查看此RayWenderlich.com教程以获取Swift帮助:
MapKit Tutorial: Getting Started

关于ios - 如何创建带有动态元素的自定义 map View 图钉?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43009360/

10-13 04:39