响应者
2016-01-30 14:47
155 查看
响应者链条示意图
响应者链条:是由多个响应者对象连接起来的链条作用:能很清楚的看见每个响应者之间的联系,并且可以让一个事件多个对象处理。
响应者对象:能处理事件的对象
响应者链的事件传递过程
如果view的控制器存在,就传递给控制器;如果控制器不存在,则将其传递给它的父视图在视图层次结构的最顶级视图,如果也不能处理收到的事件或消息,则其将事件或消息传递给window对象进行处理
如果window对象也不处理,则其将事件或消息传递给UIApplication对象
如果UIApplication也不能处理该事件或消息,则将其丢弃
响应者与事件传递的过程
区别:事件传递是从父控件传到子控件,而响应者正好相反,从子控件往上传递事件传递
1> 先将事件对象由上往下传递(由父控件传递给子控件),找到最合适的控件来处理这个事件。2> 调用最合适控件的touches….方法
3> 如果调用了[super touches….];就会将事件顺着响应者链条往上传递,传递给上一个响应者
4> 接着就会调用上一个响应者的touches….方法
如何判断上一个响应者
1> 如果当前这个view是控制器的view,那么控制器就是上一个响应者2> 如果当前这个view不是控制器的view,那么父控件就是上一个响应者
UIWindow可以拿到视图中所有的控件的点击事件
相关文章推荐
- 视频课程学习及学习计划
- TCP、UDP、IP 协议分析
- 微软编程题:寻找最小的k个值
- 《魔灵保卫者》服务端架构及实现
- hdu 2156 分数矩阵
- java(优化五) java操作redis之jedis篇
- JAVA学习第三十六课(经常使用对象API)— Set集合:HashSet集合演示
- c#之params参数
- 微信抢红包神器-安卓专享。再也不会错过红包了
- IOS图片拖拽.旋转.缩放
- bzoj1305 [CQOI2009]dance跳舞 最大流 二分
- 设计模式学习总结——观察者模式
- php 常用正则函数的使用
- ZOJ-2849-Attack of Panda Virus【bfs】【优先级队列】【4th浙江省赛】【好题】
- 【选择图片Jar】预览图片模块之M与C的实现(九)
- BitmapFactory.decodeStream 内存溢出java.lang.OutOfMemoryError
- Xcode快捷键 ---- 提高效率
- Python面向对象编程(二)
- Android Training 的整理和总结
- 杭电 今年暑假不AC