分享

(6) iphone 开发 真正理解委托(delegate)与数据源(data source)

 quasiceo 2015-03-19
分类: iphone开发 2012-04-11 20:04 2434人阅读 评论(4) 收藏 举报

目录(?)[+]

可以这么说,在iphone开发过程中,处处都离不开委托与数据源,他们是Cocoa框架的一种设计模式。

控制器拥有委托与数据源的对象,当赋给委托与数据源对象实例时(如delegate=self,把当前对象传给delegate),这时委托 或 数据源 就获得了执行操作的权利。


委托与数据源的相同之处:


先拿delegate举例,在这一点与数据源一样:在一般的程序当中不难发现,当delegate被实例后,它的具体工作是什么?当然这也得看是什么样的程序需要哪些功能,这里简单来说就是控制器(UIViewController)需实现委托对象的类型的相关的协议(protocol),然后根据功能需要实现其协议方法。关于委托的例子讲解,参见:博文第(1)篇讲的也很详细:(1) iphone开发,自定义Window-based Application 模板及委托运行机制


不同之处:


数据源:顾名思义是数据集中营,也可以说是持有了数据的引用,管理着数据,如把数据呈现在屏幕上。
委托:是定制的控制器的对象,它具有明显的执行能力。


之间的联系:


数据源管理着数据在必要时会提供给委托数据。

8

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多