我在UIScrollView子类中使用此代码尝试了它:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"he/she touched me");
}
我还确保在我的视图的初始化中,这被调用:
self.userInteractionEnabled = YES;
但是当滚动视图没有移动并且我轻拍我的子视图几次时,没有任何反应。没有日志消息。我知道如果用户想要滚动,UIScrollView实际上会等待片刻,但在某些时候它应该放弃等待并将事件发送到子视图,对吗?
有什么重要的东西可能会错过吗?
编辑:如果您遇到同样的问题,请阅读下面的答案!
答案 0 :(得分:1)
我认为其他人可能对这个问题感兴趣,而不是删除我的问题。所以,解决方案很简单:我只是忘了设置
anSuperview.userInteractionEnabled = YES;
因此,如果您必须接收触摸事件的视图嵌套在任何其他视图中,则必须将其所有子视图设置为userInteractionEnabled = YES;