![iOS Block界面反向传值小demo iOS Block界面反向传值小demo](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700&webp=1)
1、在第二个视图控制器的.h文件中定义声明Block属性:
// 定义block
@property (nonatomic, copy) void (^NextViewControllerBlock)(NSString *tfText);
@interface NextViewController () @property (weak, nonatomic) IBOutlet UITextField *inputTF; @end - (IBAction)BtnAction:(id)sender { // 判断block是否为空
if (self.NextViewControllerBlock) { self.NextViewControllerBlock(self.inputTF.text);
} [self.navigationController popViewControllerAnimated:YES];
}
2、在第一个视图中获得第二个视图控制器,并且用第二个视图控制器来调用定义的属性:
@interface AViewController () @property (weak, nonatomic) IBOutlet UILabel *nextVCInfoLabel; @end - (IBAction)btnClicked:(id)sender { NextViewController*nextVC = [[NextViewController alloc]init]; nextVC.NextViewControllerBlock= ^(NSString *tfText) {
self.nextVCInfoLabel.text = tfText;
}; [self.navigationController pushViewController:nextVC animated:YES];
}