可以這么說,在iphone開發過程中,處處都離不開委托與數據源,他們是Cocoa框架的一種設計模式。
控制器擁有委托與數據源的對象,當賦給委托與數據源對象實例時(如delegate=self,把當前對象傳給delegate),這時委托 或 數據源 就獲得了執行操作的權利。
# 委托與數據源的相同之處:
先拿delegate舉例,在這一點與數據源一樣:在一般的程序當中不難發現,當delegate被實例后,它的具體工作是什么?當然這也得看是什么樣的程序需要哪些功能,這里簡單來說就是控制器(UIViewController)需實現委托對象的類型的相關的協議(protocol),然后根據功能需要實現其協議方法。關于委托的例子講解,參見:博文第(1)篇講的也很詳細:[(1) iphone開發,自定義Window-based Application 模板及委托運行機制](http://blog.csdn.net/dongstone/article/details/7421967)
# 不同之處:
數據源:顧名思義是數據集中營,也可以說是持有了數據的引用,管理著數據,如把數據呈現在屏幕上。
委托:是定制的控制器的對象,它具有明顯的執行能力。
之間的聯系:
數據源管理著數據在必要時會提供給委托數據。
- 前言
- (1) iphone開發,自定義Window-based Application 模板及委托運行機制
- (2) iphone 開發 表視圖UITableView結構深層剖析
- (3) iphone 開發 從應用程序看UITableView的:分組,分區,索引,工作原理及其變換法則,plist文件數據定義規則
- (4) iphone 開發 自定義UITableViewCell的子類 ,輕松添加圖片文本信息等
- (5) iphone 開發 在表視圖(UITableView) 中利用UISearchBar實現數據的搜索,視圖的多功能化
- (6) iphone 開發 真正理解委托(delegate)與數據源(data source)
- (7)---01 iphone 開發 數據傳遞 NSNotification 通知機制演示
- (7)---02 iphone 開發 數據傳遞 : 頁面切換與數據的反向傳遞以及協議(protocol)作用的體現
- (8)---01 iphone 開發 大話分析導航欄NavigationController
- (9) iphone 開發 AppSettings , 系統setting與應用程序setting間的數據控制
- (10) iphone 開發 用戶點擊,觸摸和手勢識別 解析