深入理解iphone开发中的delegate
来源:互联网 发布:南京直销软件 编辑:程序博客网 时间:2024/06/05 15:31
先举一个例子:
假如"我"的本职工作之一是“接电话”,但"我"发现太忙了或来电太杂了,于是我聘请一位"秘书"分担我“接电话”的工作,如果电话是老板打来的,就让“秘书”将电话转接给“我”。。。
那么,“我”就是A Object. “秘书”就是"我"的“Delegate”。写成代码就是 -- [我 setDelegate:秘书];
delegate的概念出现与mvc(model-view-controller),protocol,单线继承 密切相关
The main value of delegation is that it allows you to easily customize the behavior of several objects in one central object.
Cocoa中处理事件的方式有几种,其中一种是你可以重载类中的对应的事件处理方 法,比如MouseDown事件在NSResponse类中就被方法mouseDown:处理,所以所有继承自NSResponse的类都可以重载 mouseDown:方法来实现对MouseDown事件的处理。
另外一种处理方式就是使用Delegate,当一个对象接受到某个事件或者通知的时候, 会向它的Delegate对象查询它是否能够响应这个事件或者通知,如果可以这个对象就会给它的Delegate对象发送一个消息(执行一个方法调用)
协议 Protocol :
我说下我的理解。object-c 里没有多继承。那么又要避免做出一个对象什么都会(super class monster,huge ,super,waste)一个超能对象 本身是否定了面向对象的概念和真谛了。为了让代码更简洁,条理更清楚,可以将部分职责分离。
协议本身没有具体的实现。只规定了一些可以被其它类实现的接口。
delegate 总是被定义为 assign @property
这样我们就在UITextField内部声明一个委托(delegate),那么就需要委托的代理实现UITextFieldDelegate 中约定的行为
- 深入理解iphone开发中的delegate
- 深入理解iphone开发中的delegate
- 深入理解iphone开发中的delegate
- 深入理解iphone开发中的delegate by hennychen
- iphone开发中的delegate的理解一
- 理解iphone开发中的delegate(委托)
- iphone开发中的delegate
- iPhone开发之Delegate(代理、委托)的理解和使用
- iPhone开发之Delegate(代理、委托)的理解和使用
- IOS开发(37)之iphone开发中的delegate
- iphone开发中的delegate 其实是桥模式
- 深入理解Delegate与Event
- iphone中的delegate委托机制
- (6) iphone 开发 真正理解委托(delegate)与数据源(data source)
- 深入理解iPhone委托模式兼谈iPhone生命周期(手把手教你iphone开发 - 基础篇)
- 理解object-c 中的delegate
- 如何理解swift中的delegate
- 如何理解swift中的delegate
- 汇编中寄存器的详解
- 使用C#实现只允许运行一个程序实例的几种方法
- 常用CHM帮助文档集锦下载
- --------------ORACLE 保存图片
- kill 用法
- 深入理解iphone开发中的delegate
- WinCE的一些名词解释
- php的回调函数
- Verilog 10进制计数器及主要的分频器 今天看懂,任务
- 使用路径
- 《Head First 设计模式》阅读笔记(二)——观察者模式
- memcached简单的使用教程
- 数据库的查询
- .apk逆向工程