拖動註記視圖後,我的地圖存在問題: 當我更改地圖平移地圖時,拖動的註記在屏幕上保持固定(其他註釋尚未拖動都會正確顯示,問題出在拖動的每個註解視圖上;注意註釋視圖繼續可選擇用於標註和拖動,唯一的問題是我可以看到它在我平移Map時不會移動)拖動的註記視圖不隨地圖移動
我有什麼解決方案嗎?這是一個與ios 7.1的已知錯誤?或者我錯過了我的代碼中的東西?
拖動註記視圖後,我的地圖存在問題: 當我更改地圖平移地圖時,拖動的註記在屏幕上保持固定(其他註釋尚未拖動都會正確顯示,問題出在拖動的每個註解視圖上;注意註釋視圖繼續可選擇用於標註和拖動,唯一的問題是我可以看到它在我平移Map時不會移動)拖動的註記視圖不隨地圖移動
我有什麼解決方案嗎?這是一個與ios 7.1的已知錯誤?或者我錯過了我的代碼中的東西?
似乎代碼應該關心做最後過渡到重置註解看來,這解決了這個問題:
-(void)setDragState:(MKAnnotationViewDragState)dragState animated:(BOOL)animated {
[super setDragState:dragState animated:animated];
if (dragState==MKAnnotationViewDragStateStarting) {
[...
} else if (dragState==MKAnnotationViewDragStateEnding || dragState==MKAnnotationViewDragStateCanceling) {
...
self.dragState = MKAnnotationViewDragStateNone;
}
}
如果註釋拖動,那麼你必須拖動它的狀態設置爲none在其委託的方法。此代碼解決了我的問題
- (void)mapView:(MKMapView *)mapView
annotationView:(MKAnnotationView *)annotationView
didChangeDragState:(MKAnnotationViewDragState)newState
fromOldState:(MKAnnotationViewDragState)oldState
{
if (newState == MKAnnotationViewDragStateEnding)
{
..... your code.....
annotationView.dragState=MKAnnotationViewDragStateNone;
}
}
您可以發佈如何添加註釋的代碼? –
一個視頻解釋:http://youtu.be/B49NanaTXL0 – atrebbi
註釋只是添加到與addAnnotation地圖:MyMapAnnotation * imagePM =(MyMapAnnotation *)註釋; MyMapAnnotation * pin =(MyMapAnnotation *)[_ delegate getAnnotation:self]; pin = [pin init]; pin.image = imagePM.image; [pin setCoordinate:imagePM.coordinate]; [pin setTitle:imagePM.title]; [pin setSubtitle:imagePM.subtitle]; pin.identifier = imagePM.identifier; [_mapView addAnnotation:pin]; – atrebbi