在ios 5中,我可以通过使用新的双击手势覆盖它来禁用双击缩放.但似乎双击手势不再出现在mkmapview附带的gesturerecognizer数组中.
NSArray *gestureRecognizers = [_mapView gestureRecognizers]; for (UIGestureRecognizer *recognizer in gestureRecognizers) { NSLog(@"%@",recognizer); }
解决方法
我将浏览MKMapView子视图的手势识别器.它可能还在某处.
当然,搞乱另一个视图的GRs有点可疑,并且可能会在Apple下次改变MKMapView时出现问题……
编辑:为了其他人阅读此内容的好处,请检查它是否是UITapGestureRecognizer并且numberOfTapsrequired == 2和numberOftouchesrequired == 1.
此外,不要完全禁用地图上的双击,而是考虑在注释上添加双击GR,然后执行[mapDoubleTapGR requireGestureRecognizerToFail:annotationDoubleTapGR].再次,hacky – 如果它在下一次操作系统更新中中断,请不要责怪我!