高德地图大头针title和subtitle

高德地图假如你要给大头针设置title或者subtitle,像这样

let pointAnnotation = MAPointAnnotation()
pointAnnotation.coordinate = CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
pointAnnotation.title = address
pointAnnotation.subtitle = address

但是实际上是行不通的
所以要在代理方法里面进行自定义 ,LNPinAnnotationView是我自定义的继承于MAPinAnnotationView的一个类
然后 你可以在这个自定义类上添加相应的label或者其他控件

// 大头针回调
    func mapView(_ mapView: MAMapView!, viewFor annotation: MAAnnotation!) -> MAAnnotationView! {
        
        if annotation.isKind(of: MAPointAnnotation.self) {
            let pointReuseIndetifier = "pointReuseIndetifier"
            var annotationView: LNPinAnnotationView? = mapView.dequeueReusableAnnotationView(withIdentifier: pointReuseIndetifier) as! LNPinAnnotationView?
            if annotationView == nil {
                annotationView = LNPinAnnotationView(annotation: annotation, reuseIdentifier: pointReuseIndetifier)
            }
            annotationView?.image = UIImage(named: "MyLocation")
            return annotationView!
        }
        return nil
    }

你可能感兴趣的:(高德地图大头针title和subtitle)