代理

来源:互联网 发布:什么推广软件效果好 编辑:程序博客网 时间:2024/04/27 18:39

代理模式:就是有一些方法要实现,但是又不知道由谁来实现,就先创建一个delegate属性,然后需要实现的时候把delegate赋值成需要实现的对象即可。

一.代理传值

3组文件:

协议:httpServiceDelegate.h

协议方法:- (void)sayHello:(NSString *)name;

 

委托者:

httpServiceManager.h

httpServiceManager.m

 

委托者需要在头文件声明一个id<httpServieProtocol>delegate属性,在实现文件里用该属性调用协议里的方法:

NSString * name = @"老猫";

[self.delegate sayHello:name];

 

代理者:

mainViewController.h

mainViewController.m

 

代理者头文件要实现协议:

@interface mainViewController :UIViewController<httpServiceDelegate>

代理者实现文件实现协议方法:

- (void)sayHello:(NSString *)name {

    NSLog(@"%@说Hello",name);

}

二.实现系统方法

原创粉丝点击