美文网首页
IOS学习之一个示例弄懂代理(delegate)和协议

IOS学习之一个示例弄懂代理(delegate)和协议

作者: 博BlingBing | 来源:发表于2015-08-26 10:43 被阅读994次

    理解协议与代理

    协议:

    协议是一个方法签名的列表,在其中可以定义若干个方法。根据配置,遵守该协议的类会去实现这个协议中规定的若干个方法。

    代理:

    代理是一个概念,很难用一个名词去定义(如我们可以说协议其实就是一个方法列表)。它更像是一种关系,我要做某一个事情,但我自己不想去做这件事,我委托其他人帮我去做这件事。这个时候,这位其他人就是我的代理。

    这个demo的思路是这样的,有一个A类,这个类不是一个基于视图类,它继承自NSObject,这个类会启动一个定时器,当定时器触发时,它会触发B视图弹出一个alert提醒。因为A类没法直接操作B视图,所以它用委托机制,“委托”B视图来操作。

    新建一个view的工程,名为DelegateDemo,默认生成的这个视图就是我们的B视图。然后新建一个timeControl类,作为我们的A类。

    A类的头文件先要定义一个协议,这个我们的代理要遵循的协议,然后应该还有一个公共的方法,用来启动定时器,代码如下:

    、、

    、、

    相关文章

      网友评论

          本文标题: IOS学习之一个示例弄懂代理(delegate)和协议

          本文链接:https://www.haomeiwen.com/subject/undhcttx.html