IOS页面(控制器之间)传值之Block

B要传值给A
1.控制器B中要有一个Block:
typedef void (^MyBlock)(NSString* str1,NSString* str2);
str1和str2里存放着要传递的参数
2.还要有一个以Block为参数的方法
-(void)chuanzhi:(MyBlock)block{
   
    block(self.textFiled1.text,self.textFiled2.text);
}
这样self.textFiled1.text,self.textFiled2.text就可以作为参数进行传递了
3.在控制器A中调用这个chuanzhi方法
(1) 导入控制器A的头文件  #import "twoViewController.h"
(2) 创建控制器A的对象,用来调用这个chuanzhi方法  twoViewController* twoVC = [[twoViewController alloc]init];
(3)在控制器A页面将要出现的时候调用这个chuanzhi方法,完成传值。
//页面将要出现
-(void)viewWillAppear:(BOOL)animated{
   
    //在页面即将出现的时候调用
    [twoVC chuanzhi:^(NSString *str1, NSString *str2) {
       
        //获得参数
        self.textFiled1.text = str1;
        self.textFiled2.text = str2;
       
    }];
   
}
原文地址:https://www.cnblogs.com/zh-li/p/5153636.html