Jes*_*ock 4 controller view uitouch
我在视图控制器的视图中有一个工作的UIButton.
我在同一视图控制器的视图中有一个UIView实例位于按钮顶部(我将其称为topView).如果满足条件,我将所有触摸事件(开始,移动,结束,取消)转发到视图的nextResponder.
但是当触发条件时,按钮不会接收事件.如果我移动topView使其不在按钮上,则该按钮起作用(或将userInteractionEnabled属性设置为false).如果topView在按钮上,则该按钮不起作用.太令人沮丧,因为我可以在视图下看到按钮!
我是否必须在视图控制器中执行任何操作才能将触摸事件发送到nextResponder?
我已经阅读了我在响应链上的所有文档,但我仍然有点困惑.
视图的nextResponder是其视图控制器或其超级视图.您的设置中的UIButton既不是,也不接收事件.
在这种情况下,您应该覆盖pointInside:withEvent:以返回NO ,而不是将事件转发到nextResponder .这样,系统的行为就像你的观点甚至不存在一样.根据文档,您还可以在视图上将userInteractionEnabled设置为NO以获得相同的效果.