我正在构建的应用程序有一个全屏幕MKMapView
,其他UIView
子类放在它上面,全屏以及完全透明。我希望UIView
子类能够处理单点触摸手势,例如点击和单指拖动,并忽略其他任何操作。这将允许MKMapView
使用其他方式进行交互,尤其是通过禁用3D功能使用两根手指进行平移/滚动。iOS - 过滤和转发子视图
我在这里的问题是,的MKMapView不使用touchesXXX:withEvent:
方法的用户交互。因此,我无法在视图上的这些方法中检测触摸计数并转发到地图。同样,hitTest:withEvent:
方法不能用于确定哪个视图处理触摸,因为那里的UIEvent
对象返回一组空的触摸。
我已经考虑让所有通过视图触摸前进,并用手势识别来处理事件,但我真的需要在覆盖视图中的单点触摸/拖拽到对地图视图没有影响。
有没有办法来完成基于触摸个数这个过滤?或者在地图视图中禁用单点触摸手势的方法?
请问如果附加单个手指点击并拖动到识别的MapView自身工作的呢? – Linuxios 2014-10-29 18:50:15
因此,通过替换它们,基本上覆盖/取消地图视图上的现有手势? – bgoers 2014-10-29 18:52:09
是的。一秒钟,我在Xcode中查看。 – Linuxios 2014-10-29 18:55:20