iPhone/iPad调整事件递交
2014-09-19 16:42
141 查看
UIKit 为应用程序提供了编程手段来简化事件处理或者完全关闭事件流。下面的列表总结了这些方法:
关闭触摸事件的递交。 缺省情况下,视图接收触摸事件,但是你可以设置它的userInteractionEnabled 属性为NO来关闭事件提交。视图在隐藏或透明时也不会接收事件。在一段时间内关闭触摸事件的递交。 应用程序可以调用UIApplication 方法beginIgnoringInteractionEvents 并稍后调用endIgnoringInteractionEvents 方法。
第一个方法使应用程序完全停止接收触摸事件消息;第二个方法恢复接收消息。有些时候你想关掉事件接收比如正在执行动画。
开启多点触摸的递交。 缺省情况下,视图忽略多点触摸事件序列中除了第一次触摸以外的其它所有事件。如果你想这个视图处理多点触摸,你必须为这个视图开启这个能力。通过编程设置你的视图的multipleTouchEnabled 属性为YES,
或者在Interface Builder这个视图的inspector里设置相关属性。
限制事件递交给单个视图。 缺省情况下,一个视图的exclusiveTouch 属性被设置为NO,
这意味着这个视图不会阻塞该窗口中的其它视图接收触摸事件。如果你把这个属性设置为YES,你标记这个视图以便,当它跟踪触摸时,它是当前窗口中唯一可以跟踪触摸的视图。窗口中的其它视图将不能接收触摸事件。不过,被标记为“exclusive touch”的视图不能接收相同窗口中其它视图相关的触摸事件。如果一个手指接触了一个exclusive-touch 视图, 那么这个触摸事件仅在该视图是当前窗口中唯一跟踪这个手指的视图时才会被递交出去。如果一个手指触摸了一个non-exclusive 视图, 那么这个触摸事件仅在没有其它手指
被一个exclusive-touch 视图跟踪时才会被递交出去。
限制事件递交给子视图。一个自定义UIView 类可以重写hitTest:withEvent: 来限制多点触摸事件递交给它的子视图。请查看关于这个技术的讨论“Hit-Testing”。
相关文章推荐
- iPhone/iPad调整事件递交 endIgnoringInteractionEvents
- iPhone/iPad调整事件递交
- iPhone/iPad调整事件递交
- iPhone和ipad键盘高度及键盘响应事件
- jQuery的live绑定事件在mobile safari(iphone / ipad / ipod)上失效的解决方案
- jQuery的on绑定事件在mobile safari(iphone / ipad / ipod)上无法冒泡事件?
- iPhone和ipad键盘高度及键盘响应事件
- 旋转实现iOS(iPhone/iPad) 屏幕旋转响应函数的缺点与窗口大小位置调整,以及解决办法
- iphone、ipod Touch、ipad触屏时的js事件
- iphone/ipad 模拟器调整大小
- iPhone和ipad键盘高度及键盘响应事件 摘
- iPhone/iPad 屏幕旋屏 iphone / ipod deployment info 调整
- iPhone/iPad 屏幕旋屏 iphone / ipod deployment info 调整
- jQuery的on绑定事件在mobile safari(iphone / ipad / ipod)上无法使用的解决方案
- iPad、iphone 横竖屏的切换事件 两个View切换
- iPhone和ipad键盘高度及键盘响应事件
- Xcode中iPhone iPad模拟器调整大小的方法
- jQuery的live绑定事件在mobile safari(iphone / ipad / ipod)上失效的解决方案
- iPhone和ipad键盘高度及键盘响应事件
- iphone、ipod Touch、ipad触屏时的js事件