一些简单实用的block使用方法。
从A页面跳转到B页面,退出B页面后再把消息会传给A。
基本流程:A -> B,B -> A
在B页面的操作
- 在B页面创建block,输入typ,会显示出
typedef <#returnType#>(^<#name#>)(<#arguments#>);
-
#returnType#
是返回的类型,默认是void
-
#name#
是block的名字 -
#arguments#
是回调的参数,比如回调字符串,就是NSString *string
在这里,我是用typedef void (^ReturnValueBlock) (QTMResModel *model);
-
- 然后创建方法:
@property (nonatomic, copy) ReturnValueBlock returnValueBlock;
- 在B页面使用的时候:
WS(weakself);
if (weakself.returnValueBlock) {
将自己的值传出去,完成传值
weakself.returnValueBlock(model);
}
在A页面的操作
A.returnValueBlock = ^(QTMResModel *model){
self.model = model;
};
这样就完成了简单思的页面传值。
最后
大多数时候,用这个简单的传值就能满足我们大部分的需求,但是要注意在使用时的内存泄漏的问题
网友评论