IOS-协议和代理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS-协议和代理相关的知识,希望对你有一定的参考价值。

协议和代理
ios中协议和代理是很常见的,但是肯定有很多人看他感觉挺麻烦的,所以就不想去碰他,不过,你要知道协议和代理会解决一些ios无法解决的问题(论其重要性)。

什么是协议和代理
简单一点来说就是页面之间的传值,当页面A跳转到页面B(可能会附带参数,这不影响),或者是页面B将数据返回给页面A.【代理模式(协议和代理者)是一种设计
模式,原理是通过一个统一的模式,也可以理解为装在一个盒子里面。协议定义一组方法,由某一个类负责实现;代理者作为某个类的一个属性,通常是另一个类的实例
对象、可以负责完成原来那个类不好解决的问题】。代理本身就是一个属性而已,代理的使用往往配合着协议。可能这个类那个类把你们都弄糊涂了,那么我们下面就来看看我们如何去使用他,这也是方便我们去了解这个模式的真正用途。

如何使用代理
在这里必须要提一下,我们在练习的时候怎么去用他都没事,要是在真正项目中,两个页面简单跳转传值也用这个代理,说实话,确实有点过了。在页面B中定义
个协议,声明ー个代理对象。在页面A中,将自己设置为页面B的代理并且完成代理方法。

什么时候使用代理
当一个对象无法直接获取到另一个对象的指针,希望对那个变量进行一些操作,便可使用代理模式。

话不多说,直接看事例:

以上是关于IOS-协议和代理的主要内容,如果未能解决你的问题,请参考以下文章

delegate和protocol

iOS基础——浅谈个人对协议代理的理解

WEB服务-Nginx之7-反向代理

Objective-C中的委托(代理)模式

这个 SOCKS 代理请求出了啥问题?

iOS-swift-协议和拓展