Swift的delegate代理与OC的delegate代理对比

2018-06-01  本文已影响0人  天真的小学童

OC中使用代理

委托方(子控制器)委托方需要实现创建协议 、声明协议方法

创建一个代理属性(weak声明)

执行协议方法

 判断代理是实现该方法,避免carsh

代理方(主控制器)代理方需要实现遵守(继承)协议

将代理设为自己

实现代理方法

Swift3.0 中代理的使用方法 

委托方(子控制器)委托方需要实现创建协议 、声明协议方法

子页面制定协议(不写NSObjectProtocol暂时不会报错,但是写属性是无法写weak)

//在Swift中,制定协议需要遵守NSObjectProtocol协议,除了类可以遵守协议,结构体也可以遵守协议

//在OC中我们制定协议,通常继承自NSObject,可以这样理解,所有继承自NSObject的对象都可以实现协议方法(同样我们也可以指定哪些对象可以实现我们制定的协议方法)

创建一个代理属性(weak声明)

判断代理是否存在,让代理去执行方法

//'?'代替了responsed

代理方(主控制器)代理方需要实现遵守(继承)协议

设置代理为self

实现协议方法

   

上一篇 下一篇

猜你喜欢

热点阅读