IOS深入学习(18)之Target-Action
2013-10-11 21:17
281 查看
1 前言
这节我们来学习一下Target-Action(目标-动作模式)。英文原文:
2 详述
Target-Action是一种当一个事件发生时候,一个对象携带发送一个消息到另一个对象的必要的信息设计模式。存储的信息包括两类数据:标识所被调用的方法的动作选择器,和一个接收消息的目标。当被称作动作消息的事件发生的时候消息开始发送。尽管target可以是任何对象,甚至是框架对象,典型代表是以一种应用的特殊方式处理action message的一个自定义控制器。引发一个动作消息的事件可以是任何事物,比如对象发送消息可以为任何对象一样。举个例子:手势识别对象可能会发送一个动作消息给另一个对象当手势被识别的时候。然而target-action范例最普遍的发现在控制器例如按钮或者滑动条。当一个用户操作一个控制对象,它发送消息给特殊的对象。控制对象是UIControl的子类。action selecter和target object都是控制对象的属性。
2.1 一个动作方法必须是固定格式的
动作对象必须有传统的标示。UIKit框架允许某些标识变动,但是平台接受action methods的格式必须与下面代码类似:-(IBAction)doSometing:(id)sender;
被用来替换void类型的,IBAction标识类型的限定词,是用来声明为一个action的方法以便Interface Builder能够知道它。对于出现在Interface Builer的一个action方法,我们首先必须声明它在实例用来接受action信息的class的头文件中。
2.2 我们能够设置Target和Action在代码里或者使用工具
我们能够设置一个control对象的action和target以编程的方式或者在Interface Builder中。设置这些属性有效的链接了control和她的target通过action。如果我们连接一个control和她的连接在Interface Builer中,连接会再nib文件中归档。当一个应用之后加载nib文件,连接将被存储。我们能够设置一个action message的目标为空。以这种方式,应用在运行期确定target;它首先发送一个动作消息给第一响应者并且从那里开始它向上寻找响应链,知道动作被处理。
3 结语
以上是所有内容,希望对大家有所帮助。相关文章推荐
- ActionScript 3.0 编程体验
- 代理区独立模式的说明
- 详解链接的rel与target区别
- ASP.NET MVC:Filter和Action的执行介绍
- Ajax in action 英文版配书源码 下载
- ajax交互Struts2的action(客户端/服务器端)
- mysql 一个较特殊的问题:You can't specify target table 'wms_cabinet_form'
- php正则表达式的模式修正符和逆向引用使用介绍
- event.currentTarget与event.target的区别介绍
- Javascript 中介者模式实例
- 代理模式之Java动态代理实现方法
- 开放授权OpenPLM学习教程-文档管理
- 开放授权OpenPLM学习教程-项目管理
- 开放授权OpenPLM学习教程-物料管理
- 开放授权OpenPLM学习教程-变更管理
- 开放授权OpenPLM学习教程-问题管理
- 开放授权OpenPLM学习教程-制程管理
- struts2 Action 访问Servlet API
- Struts2 Action类
- ora-00845 MEMORY_TARGET not supported on this system 的问题