在iOS中限制事件传递

来源:互联网 发布:java多线程高并发原理 编辑:程序博客网 时间:2024/06/05 17:33

1)限制事件递交给单个视图

有时候一个页面可能有多个控件,比如tableview的一个cell里面有多个button,如果同时用2个手指点击图片,很可能2个button都会响应,而这个不是我们想要的。视图的exclusiveTouch 属性就能帮到我们。

如果你把这个属性设置为 YES ,你标记这个视图以便当它跟踪触摸 时,它是当前窗口中唯一可以跟踪触摸的视图。窗口中的其它视图将不能接收触摸事件。


2)限制事件递交给子视图

一个自定义 UIView 类可以 重写 hitTest:withEvent: 来限制多点触摸事件递交给它的子视 图。


3)   关闭触摸事件的递交

缺省情况下,视图接收触摸事件,但 是你可以设置它的 userInteractionEnabled 属性为NO 来关闭事件提交。视图在隐藏或透明 时也不会接收事件。



原创粉丝点击