理解: ??
本人理解可能比較少,真是初學(xué)之斯,沒看過書只是稍微看一些博客加上理解光涂,
Delegate就是一種兩個(gè)人談?wù)摵玫膮f(xié)議
A的->一些方法庞萍,C++中的抽象方法,虛的類似?
表現(xiàn)形式為:@protocol HGTextViewDelegate 再定義一個(gè)這個(gè)協(xié)議的變量?
表現(xiàn)形式為:?id <協(xié)議>delegate;
在A中的一些方法里調(diào)用 [self.delegate 方法];
然后就是B繼承(詞窮就用繼承了忘闻,不是繼承的意思)了A的這些方法?
表現(xiàn)形式為:類B()<A的協(xié)議> ? 然后在B類中實(shí)現(xiàn)A協(xié)議的相對(duì)應(yīng)的方法钝计。
這時(shí)候A中的[self.delegate 方法];就會(huì)找到B中實(shí)現(xiàn)A協(xié)議的方法從而進(jìn)行TODO。
Demo:
目錄結(jié)構(gòu)-截圖
A類以及Delegate-截圖
A類中的方法-截圖
B類的聲明-截圖
B類的方法-截圖
主程序-截圖
結(jié)果:
結(jié)果-截圖
這樣看齐佳,我在A中調(diào)用了Delegate的方法私恬,把它的代理方法交移給B,他就會(huì)找到B當(dāng)中的實(shí)現(xiàn)方法炼吴。
我是這么理解的践付。。