IOS 5:UIScrollView 不将触摸传递给 nextResponder

2024-03-28

我有一个子类UIScrollView,并覆盖其所有 4 Touches 功能。在那些 Touches 函数中,[[self nextResponder] Touches...] and [super Touches...]用于传递触摸事件。

我还有一个视图控制器,在其中我也覆盖了所有 4 Touches 功能。在控制器中,我设置了self.view as: self.view = subclass of UIScrollview;

在iOS 5之前,当滚动视图上有触摸移动时,视图控制器的触摸函数可以接收所有触摸开始/移动/结束/取消调用。但在 iOS 5 中,他们不能,只有一个touchesBegan和一个touchesMove已收到。

从代码日志来看,touch函数在UIScrollView的子类总是被调用。

另外,如果我设置subclass.enableUserInteraction=NO,视图控制器中的touches函数就会被很好的调用。但我需要滚动视图与用户交互,所以我不能将其设置为否。

iOS 5 有什么我错过的不同之处吗?先感谢您。


有一个非常简单的解决方法:)

代替:

[self.nextResponder touchesMoved:touches withEvent:event];

Use:

[[self.nextResponder nextResponder] touchesMoved:touches withEvent:event];

也适用于touchesBegan 和touchesEnded。

就是这样!问题消失了!现在触摸事件被传递给下一个响应者:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IOS 5:UIScrollView 不将触摸传递给 nextResponder 的相关文章

随机推荐