12
A
回答
7
我正在研究一些代碼有相同的問題,結果問題是UIGestureRecognizer
子視圖已被添加爲MKMapView
子視圖,有時,他們會導致一些委託方法不會觸發。
因此,請確保您沒有在MKMapView
中添加子視圖或任何內容。
希望這會有所幫助。
3
我正在朝着代碼的地圖,然後它似乎我需要調用
[mapView setNeedsDisplay];
後!
+0
其實還沒有發生! – 2010-11-17 09:22:02
1
我覺得這個問題可能與多線程有關。
今天早上我有同樣的問題。我使用手勢識別器來捕獲長按事件,然後將一個pin添加到mapview。如果運行良好,但幾輪後,該地區確實改變方法停止被稱爲。
我在這裏嘗試了一些解決方案,但都沒有成功。然後,我回憶起我之前遇到的有關多線程本質行爲的其他問題。所以我嘗試將長按操作中控制mapview的代碼移動到在主線程中運行的塊。問題就解決了。
0
我管理由touchesBeganCallback
self.tapInterceptor.touchesBeganCallback = ^(NSSet *touches, UIEvent *event) {
self.tapInterceptor.enabled = NO;
// do something
};
內禁用手勢識別,並在regionDidChangeAnimated委託方法
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated {
self.tapInterceptor.enabled = YES;
// do something
}
0
每當一個敲擊手勢識別器加入到的MapView重新啓用它來解決這個問題,設置
recognizer.cancelsTouchesInView = NO;
需要注意o如果你的業務邏輯允許雙重處理,如果觸及mapview(通過MKMapView和手勢識別器 ,這是最近干擾該地區[Will,Did] ChangeAnimated :)
相關問題
- 1. MKMapView沒有在Pan上調用regionDidChangeAnimated
- 2. 的MKMapView委託:regionDidChangeAnimated和mapViewDidFinishLoadingMap
- 3. activity.on不總是被調用
- 4. multiple regionDidChangeAnimated調用 - 什麼給?
- 5. regionDidChangeAnimated不工作
- 6. 的MKMapView didUpdateUserLocation不會被調用
- 7. Rest API並不總是被調用
- 8. captureStillImageAsynchronouslyFromConnection:stillImageConnection completionHandler並不總是被調用
- 9. ,onStopJob總是被調用?
- 10. 在MKMapview中使用NSAutoreleasepool時應用程序崩潰regionDidChangeAnimated方法
- 11. mkMapView的regionDidChangeAnimated委託觸發了兩次標籤加載
- 12. 方法onActivityResult不會被調用,當被調用的resultCode總是爲零
- 13. Objective-C for Dummies:如何在不調用mapView的情況下更改區域:regionDidChangeAnimated?
- 14. locationManager:didUpdateLocations:總是被多次調用
- 15. 爲什麼the_post_thumbnail總是被調用?
- 16. onListItemClick沒有(總是)被ListActivity調用
- 17. 的MKMapView委託方法不會被調用-calloutaccessorycontroltapped
- 18. Skype4Py:messageStatusChanged不總是調用
- 19. `RunWorkerCompleted`不總是被解僱
- 20. onCharacteristicWrite()被調用,但它並不總是寫
- 21. Android多點觸控:ACTION_UP並不總是被調用?
- 22. MKMapView點擊引腳不會調用didSelectAnnotationView
- 23. Objective C MKMapView EXC_BAD_ACCESS
- 24. 內存不被釋放MKMapView w/ARC
- 25. NSFetchedResultsController並不總是調用didChangeObject:atIndexPath:forChangeType:newIndexPath:NSFetchedResultsChangeMove
- 26. 我uitableview(cell = nil)總是不會調用?
- 27. UIWebView並不總是調用 - [NSURLCache storeCachedResponse:forRequest:]
- 28. ViewPager - 並不總是調用onCreateView
- 29. 調用setVisible並不總是在操作
- 30. NSManagedObjectContextObjectsDidChangeNotification不總是立即調用
10你有沒有得到過這個解決方案? – thekevinscott 2011-06-27 20:01:24
在Apple的論壇中對此進行了一些討論:https://devforums.apple.com/message/525411 – 2011-08-30 19:31:46
如果您使用自己的觸摸處理的自定義註釋視圖,請查看此討論:http:// www.iphonedevsdk.com/forum/iphone-sdk-development/79199-regiondidchangeanimated-not-always-firing.html – 2011-08-30 19:47:15