我想使用mapView
协议中的MkmapviewDelegate
函数,但不要让注解是MKAnnotation
变量,而是希望它来自自{{ 1}}。
问题是,当我编写MKAnnotation
时,使用自定义类中的方法会出现错误,而当我编写"viewFor annotation: MKAnnotation"
时,程序将不使用此方法并且我也不会得到什么我想要。
注意:最终目标是为动态创建的注释显示自定义图像。
谢谢您的回答
功能:
答案 0 :(得分:0)
您可以像这样保护viewFor annotation: MKAnnotation
中的自定义类:
func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotation? {
// we check if the annotation is of type MYCLASS, otherwise we make an early exit with nil
guard let myClass = annotation as? MYCLASS else {
return nil
}
if myClass.getState() == ... {}
}
然后您可以再次使用自定义类方法