技术

ios-委托代理详细步骤

2015-12-15  本文已影响2037人  Roger_单

【第二个页面】
1在第二个页面写协议,写在interface 上面

2.在第二个页面 实例化协议的变量

3.让协议变量去做做协议中的方法

【第一个页面】
1.跳转页面的时候,签合同。

vc2.delegate = self; self为vc1

2.在interface中实现这个协议

3.在.m中实现协议方法。

如果想用第二页面传值到第一页面 我们用到了委托代理这个方法
首先
第一步
在第二页面的.h中 写个协议和实体变量

@protocol TwoValueDelegate<NSObject>

第二步
写个协议方法

-(void)TwoValue:(NSString *)str;
@end

第三步
在@interface下,写个实体变量

//id(为任意数据类型)delegate(为委托方法)
@property(nonatomic,weak)id<TwoValueDelegate>delegate;

第四步
在第二页面.m文件中viewWillDisappear下

// 执行delegate协议中的TwoValue方法
-(void)viewWillDisappear:(BOOL)animated{
    [self.delegate TwoValue:@"abc"];
}

第五步
在第一文件中.m@interface后写委托方名

@interface OneViewController ()<TwoValueDelegate>

第六步
在第一页面.m中跳转上写delegate委托这个方法为自身

 TwoViewController* vc = [[TwoViewController alloc]init];
   //关键代码 
    vc.delegate = self;
    [self.navigationController pushViewController:vc animated:YES];

第七步
步调用这个协议方法

-(void)TwoValue:(NSString *)str{

    NSLog(@"abc");

}
上一篇 下一篇

猜你喜欢

热点阅读