文档章节

Delegate

天边那束阳光
 天边那束阳光
发布于 2014/10/11 19:56
字数 314
阅读 55
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

Delegate使用场合

对象A内部发生了一些事情,想通知对象B

对象B想监听对象A内部发生了什么事情

对象A想在自己的方法内部调用对象B的某个方法,并且对象A不能对对象B有耦合依赖

对象A想传递数据给对象等...结果都一样:对象B是对象A的代理(delegate)(如需要多对多则可使用消息中心)

使用delegate

1.先搞清楚谁是谁的代理(delegate)
2.定义代理协议,协议名称的命名规范:控件类名 + Delegate
3.定义代理方法
    代理方法一般都定义为@optional(代理可以不实现此方法)
    代理方法名都以控件名开头
    代理方法至少有1个参数,将控件本身传递出去
4.设置代理(delegate)对象  (比如myView.delegate = xxxx;)
    代理对象遵守协议
    代理对象实现协议里面该实现的方法
5.在恰当的时刻调用代理对象(delegate)的代理方法,通知代理发生了什么事情
(常见错误:如没有调用代理方法,则确认代理是否实现了该代理方法)


上一篇: 通知机制
下一篇: UITableView
天边那束阳光
粉丝 1
博文 10
码字总数 4787
作品 0
郑州
私信 提问
加载中
请先登录后再评论。
VCTransitionsLibrary –自定义iOS交互式转场动画的库

简介 VCTransitionsLibrary 提供了许多适用于入栈,出栈,模态等场景下控制器切换时的转场动画.它本身提供了一个定义好的转场动画库,你可以拖到自己工程中直接使用;也提供了许多拥有不同转场动...

ios122
2015/08/27
2.9K
0
iOS 基础知识之UI篇

UILabel 基本使用 1.UILabel创建.frame位置确定CGRect 介绍(iOS坐标体系) UILabel lable = [[UILabel alloc]init]; lable.frame = CGRectMake(12, 34, 123, 12); [self.view addSubview:la......

龚志明
2016/03/14
856
1
kerkee在iOS上的快速上手指南

这篇文章将介绍kerkee如何在iOS上快速上手! kerkee是一个多主体共存型Hybrid框架,具有跨平台、用户体验好、性能高、扩展性好、灵活性强、易维护、规范化、集成云服务、具有Debug环境、彻底...

子鸿
2016/04/28
1.2K
3
高性能弹幕库--FXDanmaku

FXDanmaku是一个高性能弹幕库。具有以下特性: 除了UI操作, 其他操作都以代码块交给异步队列处理了.(使用GCD提交的代码块, 最终会由XNU kernel根据CPU使用情况创建新的线程去执行或分配给其他...

ShawnFoo
2017/03/06
1.1K
1
多功能自定义相册--SRAlbum

SRAlbum 自定义相册,带拍照、录像,图片处理(GPUImage),相册获取方式有照片和视频混合获取,照片获取,视频获取。拍照方式是自定义的AVCapture,轻触拍照,按住摄像,拍摄后保存到本地相册...

ssssddf
2017/04/19
1.5K
0

没有更多内容

加载失败,请刷新页面

加载更多

没有指定分支的“git push”的默认行为 - Default behavior of “git push” without a branch specified

问题: I use the following command to push to my remote branch: 我使用以下命令推送到我的远程分支: git push origin sandbox If I say 如果我说 git push origin does that push ch......

技术盛宴
18分钟前
11
0
为什么在允许某些Unicode字符的注释中执行Java代码?

问题: The following code produces the output "Hello World!" 以下代码生成输出“Hello World!” (no really, try it). (不,真的,试试吧)。 public static void main(String... args......

富含淀粉
今天
12
0
字符串格式:%与.format - String formatting: % vs. .format

问题: Python 2.6 introduced the str.format() method with a slightly different syntax from the existing % operator. Python 2.6引入了str.format()方法,其语法与现有的%运算符略有不......

javail
今天
22
0
什么是按位移位(位移)运算符以及它们如何工作? - What are bitwise shift (bit-shift) operators and how do they work?

问题: I've been attempting to learn C in my spare time, and other languages (C#, Java, etc.) have the same concept (and often the same operators) ... 我一直在尝试在业余时间学习......

法国红酒甜
今天
32
0
OSChina 周二乱弹 —— 卧槽 李荣浩的契约兽啊

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《红色的回忆》- 痛仰乐队 手机党少年们想听歌,请使劲儿戳(这里) 动弹, 又好多...

小小编辑
今天
67
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部