1. 事例现有A-VC,B-VC两个界面,在B-VC有一个按扭,希望在B-VC点击按扭时,给A-VC传递参数
2.B-VC代码:
B-VC.H文件
在B-VC定义一个block;
typedef void((^LHUserMessage)(NSString *name, NSString *password));
@property (nonatomic, copy ) LHUserMessage userMessage;
- (void)loginClick:(LHUserMessage)userMessage;
B-VC.m文件
假设loginClick为某个按扭的点击事件, @"A1xxxxxx",@"A2xxxxxx",为将要传递的值
- (void)loginClick {
if (self.userMessage) {
self.userMessage(@"A1xxxxxx",@"A2xxxxxx");
}
}
- (void)loginClick:(LHUserMessage)userMessage {
self.userMessage = userMessage;
}
3. A-VC.m代码
创建B-VC实例
LHUserView *login = [[LHUserView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:login];
[login loginClick:^(NSString *userName, NSString *password) {
///< 在此便可以获取掉B-VC 传递参数
}];