通常代理的使用需要以下幾個步驟: 1、制定協議。協議可以在委托對象的.h中聲明,也可以在單獨的.h中聲明。制定協議後,在協議中聲明需要代理對象來實現的方法。 2、設置代理屬性。制定協議後需要為委托對象設置一個代理屬性,代理屬性的作用是存儲委托對象的代理對象。具體格式如下:@property (no....
通常代理的使用需要以下幾個步驟:
1、制定協議。協議可以在委托對象的.h中聲明,也可以在單獨的.h中聲明。制定協議後,在協議中聲明需要代理對象來實現的方法。
2、設置代理屬性。制定協議後需要為委托對象設置一個代理屬性,代理屬性的作用是存儲委托對象的代理對象。具體格式如下:
@property (nonatomic, assign) id<****> delegate;//****是協議名
3、指定代理對象。通常在 代理對象 中,指定 委托對象 的代理是自己。示例如下:
***.delegate = self;//代理對象名***
4、代理對象 服從 委托協議
5、代理對象 實現 委托協議中的必須實現的方法
6、委托對象在合適的時機讓代理對象執行協議中的方法。也就是調用已經實現的 協議中的 方法。通常格式如下:
if ([self.delegate respondsToSelector:@selector(方法名)]) {
//如果代理方實現了協議中得方法,就讓代理去執行該方法
[self.delegate 方法];
}