你的位置:首页 > 操作系统

[操作系统]OC中代理的使用


通常代理的使用需要以下几个步骤:

1、制定协议。协议可以在委托对象的.h中声明,也可以在单独的.h中声明。制定协议后,在协议中声明需要代理对象来实现的方法。

2、设置代理属性。制定协议后需要为委托对象设置一个代理属性,代理属性的作用是存储委托对象的代理对象。具体格式如下:

@property (nonatomic, assign) id<****> delegate;//****是协议名

3、指定代理对象。通常在 代理对象 中,指定 委托对象 的代理是自己。示例如下:

***.delegate = self;//代理对象名***

4、代理对象 服从 委托协议

5、代理对象 实现 委托协议中的必须实现的方法

6、委托对象在合适的时机让代理对象执行协议中的方法。也就是调用已经实现的 协议中的 方法。通常格式如下:

if ([self.delegate respondsToSelector:@selector(方法名)]) {

  //如果代理方实现了协议中得方法,就让代理去执行该方法

  [self.delegate 方法];

}