代理的基本用法
界面由A->B 再由B->A 的時候,需要B的值傳值給A以下是用代理的方法實現(xiàn), 代理和傳值是先走實現(xiàn),再走調(diào)用!
- 在B控制器的.h文件中定義代理
protocol SendValueDelegate <NSObject>
@required
- (void)passValue:(NSString *)text;
@end
- B.h加上屬性
@property(nonatomic,assign) id<SendValueDelegate>delegate;
- 在B.m中走調(diào)用的方法
-(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實現(xiàn)代理的方法
-(void)passValue:(NSString *)text
{
self.lab.text = text;
NSLog(@"%@",text);
}
如有錯誤,請聯(lián)系我qq 203555928