委托范例
2018-08-25 本文已影响0人
zhujames
Class.h
#import <Foundation/Foundation.h>
//委托的协议定义
@protocol doActionDelegate <NSObject>
- (void)doAction;
@end
@interface Class : NSObject
//委托变量定义
@property (nonatomic, weak) id<doActionDelegate> delegate;
- (void) startAction;
@end
Class.m
#import "Class.h"
@implementation Class
- (void) startAction
{
[self.delegate doAction];
}
@end
ViewController.h
#import "Class.h"
@interface ViewController : UIViewController<doActionDelegate>
@end
ViewController.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
Class *obj = [[Class alloc] init];
obj.delegate = self; //设置委托实例
[obj startAction];
}
- (void)doAction
{
//处理要做的事
NSLog(@"代理协议实现");
}