对block一直有点抵触,终于抽出点时间整理一下
a b 两个界面间的传值 用block 实现a b 之间的传值
首先在第二个界面 声明一个block
.h文件
//1.写block属性>(返回类型+(^block名称)(参数类型<参数的类型要和传的值的类型一致>))
@property (nonatomic,copy)void(^myBlock)(UIColor *,NSString *);
在触发事件返回上个界面的的函数里 给block赋值
//block 2步 调用block给参数赋值
self.myBlock([UIColorredColor],@"xxx");
//通常给block的参数赋值的代码,写在下级界面将要回到上级界面的代码地方
二:在第一个界面
在点击跳入到第二个界面的时间里 调用block 方法
引入第二个界面的头文件 并调用第二个界面传回的值
RootViewController *root = [[RootViewControlleralloc]init];
//3步调用block 获取block带过来的值 并使用该值
root.myBlock = ^(UIColor *color,NSString *name){
self.view.backgroundColor = color;
self.title = name;
};
执行上述步骤后完成简单的利用block进行界面传值
更多具体的block 的方法原理 将在lock 专栏的博客中进行总结