KVC:Key Value Coding
解釋意思:通過一個key去找到對應的編碼
初學者很同意搞混與KVO的區(qū)別,我提個意見最后是個C,想它就是詞,于什么有關系:詞典(NSDictiontroy)
KVO: Key Value
解釋意思:鍵值監(jiān)聽
監(jiān)聽屬性-監(jiān)聽模型屬性的改變,只要你調(diào)用它的set方法他就會調(diào)用

實現(xiàn)監(jiān)聽方法


不要忘記

通知--NSNotification
通知:1個對象可以告訴N個對象,發(fā)生了什么事(多個人發(fā)送的通知可以被多個人監(jiān)聽)
代理 --Delegate
代理:1個對象只能告訴另一個對象,發(fā)生了什么事
代理設計模式:一般用weak
1.A對象監(jiān)聽B對象的一些行為, A成為B代理
2.A對象想告訴B對象一些事情,B成為A代理
3.B對象想告訴A對象一些事情,A成為B代理
代理模式使用開發(fā)步驟:
1.擬一份協(xié)議(協(xié)議的名字:控件名+delegate),在協(xié)議里面聲明一些代理方法,代理方法一般都是@optional。
2.聲明一個代理屬性, 代理使用weak
@property (nonatomic, weak) id<代理聲明> delegate;
3.在內(nèi)部發(fā)生某些行為時,調(diào)用代理對應的代理方法,通知代理發(fā)生什么事
4.設置代理:xxx.delegate = YYY
5.某某對象遵守協(xié)議,實現(xiàn)代理方法
由于沒有指定方法,所以我們無法確定代理返回的對象中有什么樣的方法

我們必須要提供協(xié)議

這里面的self.delegate 就是遵守代理協(xié)議的tableView

在控制器中:遵守代理屬性

在控制器中:設置SUNLoadMore對象代理為控制器

最后:實現(xiàn)代理的方法