Swift 无法在 MKAnnotation 中分配字幕

Swift cannot assign subtitle in MKAnnotation

我正在尝试以编程方式更新 MKAnnotation 中的字幕。以下代码行产生 cannot assign subtitle in annotation 错误:

let annotation: MKAnnotation = mapView.annotations[0] as! MKAnnotation
annotation.subtitle = nil

谁能帮我指明在 MKAnnotation 显示在地图中后我可以更新字幕的方向?

MKAnnotation 是一个协议。在该协议中,subtitle 是只读的。也就是说不能设置。

因此,由于您已将此注释转换为 MKAnnotation,因此无法设置 subtitle

如果你知道 class 注释 really 是什么,那么 你可以投射到那个 class,并且大概它会有一个 subtitle 即 read/write 所以你可以设置它。例如,它可能是一个 MKPointAnnotation,或者您可能有自己的自定义注释 class。然后你就可以转换成那个了,现在你可以设置 subtitle.