2015-09-21 27 views
0

我有一個MapViewController類和我在viewDidLoad中設置MKAnnotation總是紅專刷新

mapView.delegate = self 

。當我第一次加載地圖時,註解呈現正確。但是,刷新後(例如,我在標註中點擊按鈕後 - 例如'刪除'),所有其他引腳都會丟失圖像並呈現「紅色」。

在我的刷新方法,我刪除所有註釋:

mapView.removeAnnotations(mapView.annotations) 

,然後重新創建註釋中,我創建他們初始加載相同的方式。

直到今天,當我升級到Swift 2.0時,此代碼工作正常。直到現在我還是幸運還是錯過了一段新的代碼?

我甚至試圖強制銷默認爲綠色。但無論我做什麼(圖像設置或改變顏色),刷新後,所有的管腳都紅:(

回答

0

發現臭蟲:

func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? { 

在一天的某個時刻,我莫名其妙地變的情況下:。

mapView.dequeueReusableAnnotationViewWithIdentifier(identifier) 

沒有回零,並設置詮釋MKPinAnnotationView刷新後,我出列相同的對象。一旦呈現它默認爲紅

解決方案只處理一個'MKAnnotationView'對象(不管我自己的子類或默認)。

相關問題