代理的基本用法
界面由A->B 再由B->A 的时候,需要B的值传值给A以下是用代理的方法实现, 代理和传值是先走实现,再走调用!
- 在B控制器的.h文件中定义代理
protocol SendValueDelegate <NSObject>
@required
- (void)passValue:(NSString *)text;
@end
- B.h加上属性
@property(nonatomic,assign) id<SendValueDelegate>delegate;
- 在B.m中走调用的方法
-(void)clickacrion:(UIButton *)sender
{
if ([_delegate respondsToSelector:@selector(passValue:)]) {
[_delegate passValue:self.tf.text];
}
[self.navigationController popViewControllerAnimated:YES];
}
- A要想走代理的方法,就要遵循他的代理
B *vc = [[B alloc] init];
vc.delegate = self;
- 遵循代理之后就要在A.m实现代理的方法
-(void)passValue:(NSString *)text
{
self.lab.text = text;
NSLog(@"%@",text);
}
如有错误,请联系我qq 203555928