需求:第二个VC中的值通过Block方式传递回第一个VC中。
实现:第一个VC我们称为AVC,第二个VC我们称为BVC。
AVC代码:
BVC *bvc = [[BVC allon]init];
//VCBlock是BVC中声明的Block,当接收到传递的值时,我们调用方法[self resulut]进行后续操作
bvc.VCBlock = ^(NSMutableArray *array){
[self resulut];
}
[self.navigationController pushViewController:bvc animated:YES];
BVC代码:
.h文件
@property(nonatomic,copy)void (^VCBlock)(NSMutableArray *muArray);//定义Block方法
.m文件
我们点击按钮返回第一个AVC,所以在按钮点击事件中添加Block方法
-(void)btnClick{
if (self.VCBlock){
self.VCBlock(self.myArray);//Block中可以是字典,字符串,数组,对应.h文件中的类型
}
}
结束:当我们在第二个VC中点击返回按钮的时候,会把参数传递个第一个VC,第一个VC通过方法进行操作处理。