资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

iOS开发设计模式之代理

  • 代理设计模式

    创新互联专业为企业提供泰兴网站建设、泰兴做网站、泰兴网站设计、泰兴网站制作等企业网站建设、网页设计与制作、泰兴企业网站模板建站服务,十多年泰兴做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

代理设计模式,也称“委托”,顾名思义就是委托别人去做事情

     在代理模式中,一方称为委托方,另一方称为代理方。

     委托方和代理方通过协议联系到一起。

     当委托方想要让代理方做事情时只需向代理发送代理消息

     iOS开发设计模式之代理

     

代理的作用:

     1)对象间传递事件 :孩子告诉妈妈饿了

     2)对象间传递数值 :告诉妈妈饿了的同时告诉想吃什么

          代理方法中使用参数

     3)为自身的属性赋值 :孩子告诉妈妈饿了同时要得到妈妈做的食物

          代理方法中使用返回值

  • 代理设计模式的使用步骤

  1. 委托方:提出代理协议

@protocol AMViewDelegate 
@optional
- (void) view:(AMView*) view detailInfoWithState:(BOOL) state;
@end

2. 委托方:添加代理对象属性

@interface AMView : UIView
@property (nonatomic, weak) id delegate;

3. 代理方:遵循代理协议

@interface ViewController() 

4. 代理方:成为委托方的代理者

view.delegate = self;

5. 代理方:实现代理方法

- (void) view:(AMView*) view detailInfoWithState:(BOOL) state
{
    //...
}

6. 委托方:通过代理属性调用代理方法

- (IBAction) nameBtnClicked:(id) sender {
    if ( self.delegate && [self.delegate respondsToSelector:@selector(view:detailInfoWithState:] ) {
        [self.delegate view:self detailInfoWithState:NO];
    }
}

名称栏目:iOS开发设计模式之代理
链接URL:http://www.cdkjz.cn/article/gpddsp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220