我有以下代码,用于尝试将注释视图出列,然后创建一个注释视图,如果它不存在但有一些重复,这看起来不像" swift&# 34;办法。关于如何改进的任何建议?
func mapView(mapView: MKMapView!, viewForAnnotation annotation: MKAnnotation!) -> MKAnnotationView! {
let identifier = "annotation"
if let annotationView = mapView.dequeueReusableAnnotationViewWithIdentifier(identifier) as? MKPinAnnotationView {
configureAnnotationView(annotationView)
return annotationView
} else {
let annotationView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifier)
configureAnnotationView(annotationView)
return annotationView
}
}
答案 0 :(得分:4)
您的代码看起来很好。
缩短它的一种方法可能是
let annotationView =
mapView.dequeueReusableAnnotationViewWithIdentifier(identifier) ??
MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifier)
然后你也只需要一个return
语句而不需要if
子句。