iOS block传值的简单使用

来源:互联网 发布:剑雨江湖10进阶数据 编辑:程序博客网 时间:2024/06/07 03:43

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 传递参数
}];


原创粉丝点击