项目开发过程中有一个需求是将下载的图片通过调用微信接口分享出去,但是在实现过程中调用这个微信接口方法的控件类是一个继承自UIView
的类,报错提示为请使用继承自UIViewController
的子类去调用这个接口。此时就必须使用代理将这个接口方法的调用托管到父控件中代为执行【父控件继承UIViewController
】
本篇文章就简单的介绍一下代理的使用方法,以目前的水平就不深究原理了。
一:代理的三大组成
1:协议
用来定义双方要去做什么,协议的内容一般都是方法列表。
相当于是合同
2:代理
代理方,实现具体的操作逻辑,委托方不知道具体的实现细节,只调用即可。
相当于苹果公司
3:委托
委托方,根据协议中的内容委托代理方去完成功能
相当于富士康
注意:一个代理可以有多个委托,一个委托可以有多个代理
说的通俗一点,不就是甲方乙方以及合同吗???
二:实现步骤
需求:
当DateView
中的时间改变后,在SaleHistoryViewController
中实现改变所有的button颜色的逻辑操作。即改变button颜色的方法调用在DateView
页面,实际的改变操作是在SaleHistoryViewController
中,以上就是需求,需要使用代理来实现相