Responder object
来源:互联网 发布:js修改button的值 编辑:程序博客网 时间:2024/06/07 06:58
Responder是一个可以响应事件并出来这些事件的对象。
在一个app中可见的对象大部分都是响应者,例如:window,view,和control,同时app对象也是一个响应者。另外在ios中UIViewController也是响应对象。
为了接收时间,响应者必须完成事件的处理方法,来告诉app它可以成为第一响应者。
响应者接收事件
在app中,第一响应者可以接收很多种事件。(键盘事件,移动事件,动作消息等等)。为了接受事件,响应者必须表明它愿意成为第一响应者,我们可以使用下面的函数来实现。
// OS X
- (BOOL)acceptsFirstResponder { return YES; }
//iOS
- (BOOL)canBecomeFirstResponder { return YES; }
响应链和事件控制之间的合作
在app中操作的时候,如果第一响应者(在视图的最顶端的视图,或者可以说是我们首先在app中看见的视图)不能接收事件或者消息的时候,它会将其转发到响应链结构中的下一个响应者。在app中,响应链允许响应者转发事件的或者消息处理给其他的对象。如果一个对象在响应链中,但是它不能处理事件或者消息动作,它就会把事件或者消息动作传给响应链中的下一个响应者。传递的消息会沿着响应链向上传递给更高级别的对象,直接事件被处理,而如果传递到响应链的最顶层,事件还是未被处理,那么app就会把这个事件丢掉。
下面看iOS(左边)和Mac(右边)下响应链传递方式
- Responder object
- Responder object
- IT English Collection (25) of Responder object
- Responder
- IOS深入学习(25)之Responder object
- Responder对象
- first responder
- responder nextResponder
- responder chain
- Responder Objects and the Responder Chain
- iphone的responder chain
- IOS Responder Chain简析
- Responder Chain简析
- nextResponder与Responder Chain
- The Responder Chain
- Responder Chain简析
- Responder Chain简析
- The Responder Chain
- HDU 2063 Investment (完全背包)
- 20160321-20160325 浏览器兼容性问题
- spring 事物 测试
- leetcode-21 Merge Two Sorted Lists
- Spring 事务管理高级应用难点剖析--转
- Responder object
- Git SSH Key 生成步骤
- Xshell用ssh连接ubuntu掉线解决方法
- Java并行编程–从并行任务集获取反馈
- linux 之PATH、LD_LIBRARY_PATH及编译指定头文件、动态库
- 常用的两种web单点登录SSO的实现原理
- leetcode-22 Merge k Sorted Lists
- Linux中断研究
- js checkBox,Radio选中