我添加了一个 UIView
,它依赖 TouchesMoved: 事件来拖动触摸。同一个 View Controller 中已经存在长按、点击、旋转和捏合手势识别器。我遇到了一个问题,即 View 接收到 touchesBegan:
和 touchesEnded:
事件,但没有移动任何触摸。
我的 touchesMoved 未被调用的问题是否是由手势识别器取消 View 内的触摸引起的?我还涉及到 ScrollView 。这会是罪魁祸首吗?
如果我将无法使用 touchesMoved,这是实现“触摸和移动”功能的最接近手势。它是点击还是平移手势识别器?
感谢您的帮助!
最佳答案
默认情况下,手势会取消在它们处于事件状态时链接到的对象中的触摸。您可以通过设置 cancelsTouchesInView 来停止此行为属性设置为 NO
。
关于iPhone UIView touchesMoved : withEvent: does not get called on UIView with gesture recognizers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10326097/