我有一个UIScrollView,其“ bounces”属性设置为YES。
当contentOffset移过屏幕顶部时,我会显示一个类似于邮件程序的动画活动指示器。

如果在某个点上我可以模仿用户举起手指的感觉,那就太好了-从字面上取消touchReconizer中的触摸并强制touchesEnded。

在iOS中,有没有一种方法可以中断活动的触摸并完全取消它,或者可能将其传递到任何地方或无法静默不响应的视图?这是一个活动的UITouch。大多数(如果不是全部)方法都是在手指触摸屏幕之前设置的。它们在这种情况下无效。

我寻找了直接取消UITouches,完全取消用户交互的方法,甚至尝试过直接使用活动的滚动视图直接插入视图,但是没有任何效果。

有没有办法做到这一点,还是苹果之神把它吓倒了?

最佳答案

您是使用任何自定义手势识别器还是仅使用常规的scrollview行为?

取消手势识别器的一种方法是禁用并再次启用它。

gesture.enabled = NO;
gesture.enables = YES;


如果您使用常规的scrollview行为,我建议使用相同的方法,但要使用userInteractionEnabled属性

scrollView.userInteractionEnabled = NO;
scrollView.userInteractionEnabled = YES;


或许:

scrollView.scrollEnabled = NO;
scrollView.scrollEnabled = YES;

关于ios - 有没有办法在iOS中中断事件的UITouch,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21712132/

10-12 00:16
查看更多