菜鸟成长记-代理使用场景

来源:互联网 发布:我国域名总数2016年6月 编辑:程序博客网 时间:2024/04/30 22:44
    代理模式运用场景: 当有一个A类想要实现某一个功能时,自己本身实现不了(或不想实现),但是B类却能实现这个功能, 这个时候A就需要一个代理类(就是B类),利用B类来帮自己实现。代理是通过协议体现的
    步骤: 1:(谁想实现某功能就在谁的里面写一个协议)首先在A类的头文件中写一个协议(@protocol)并声明一个方法(或多个方法),该方法就是实现某一个功能方法
             2: A类中写一个代理属性  (id <协议名称>delegate)
             3: 在A类的实现文件中调用delegate属性, 并调用其协议中声明的方法(实现的是B类中实现协议中的方法)
             4:在B类中遵守协议 , 并实现协议方法(该方法就是实现了某一个功能

直接上图说明吧,

1:这里RXFootView充当A类  首先在A类中写好协议及方法、id属性


2: 在A类实现文件中调用协议中的方法,其实主要作用就是传值



3:在B类中指定代理并实现协议中的方法即可,,就三步你就可以使用代理了,


总结:一般项目中代理是常用的传值方法,但是它不能对多个对象传值,它是one-one,如果有这种需求就可以使用通知了,通知使用起来也是非常方便的,一般运用场景就是弹出一个下拉列表进行城市选择之类的业务。

1 0