出于某种原因,我正在尝试制作自己的自定义 UIScrollView
。问题是,是否可以完全模仿 UIScrollView
的事件处理行为,包括“延迟内容触摸”和“可取消内容触摸”?也就是说,自定义 ScrollView 应该延迟处理事件,直到它可以确定滚动是否是意图,并且它还应该能够稍后取消其 subview 的触摸。问题如下:
1) hitTest: 应该立即返回所以我不能延迟触摸所有者的确定。
2) 我们以后无法以编程方式取消触摸事件。没有这样的api。
3) 我试图覆盖 sendEvent:
方法,但没有帮助。必须调用 [super sendEvent:]
会将事件发送到非预期的 View 。此外,在调用sendEvent:
时已经完成了 HitTest ,以后我们无法更改UITouch.view
的值。
那么问题又来了,是否可以在不使用 UIScrollView
的情况下制作自定义 UIScrollView
,包括它的触摸处理行为?
提前致谢!
最佳答案
要记住的一件事是,在 iOS 5.0 发布之前,用于常规 UIScrollView 的 gestureRecognizers(平移和缩放)是私有(private)属性。我想当它们公开时,您可以将它们转移到您自己的 ScrollView 中。
关于iphone - UIScrollView 事件处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3939116/