2016-09-06 90 views
0

我有一個應用程序,允許用戶在一個視圖上選擇大學,並在他們選擇後,該視圖解散並顯示地圖。目前,我使用下面的代碼,但它動畫所有註釋。我希望現有的註釋不會動畫,只有當視圖被解散時纔會對新選擇的大學生成動畫。如何動畫剛刪除的註釋?

func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? { 
    let reuseID = "pin" 

    var pinView = mapView.dequeueReusableAnnotationViewWithIdentifier(reuseID) as? MKPinAnnotationView 

    if pinView == nil { 
     pinView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: reuseID) 
     pinView?.canShowCallout = true 
     pinView?.rightCalloutAccessoryView = UIButton(type: .DetailDisclosure) 
     pinView?.animatesDrop = true 
    } else { 
     pinView?.annotation = annotation 
     pinView?.animatesDrop = true 
    } 
    return pinView 
} 

回答

0

您可以創建一個自定義的註釋和一個布爾值添加到它來檢查,如果它之前已經或不添加。

class CustomPointAnnotation: MKPointAnnotation { 
    var name: String! 
    var exists: Bool! 
} 

然後用CustomPointAnnotation當您添加註釋和檢查existstrue那麼你鴕鳥政策有生如果false然後進行動畫處理。