block 从B界面向A界面传值

最近在改公司外包项目的代码,发现了一种block传值的用法很有意思,记录一下

A、B两个页面

在B界面.h中定义

@property (nonatomic,strong) void(^block)(NSString *address);

在A界面跳转至B界面时加入代码

B *bMod = [[B alloc]initWithNibName:@"B" bundle:nil];//B *bMod = [[B alloc]init];

    

    bMod.block = ^(NSString *address){

        if (addres) {

           NSLog(@"addres = %@",addres);

        }

    };  

    [self pushViewController:aaMod];

B界面返回A界面并传回值@"123456",在.m中加入代码

NSString *address = @"123456";

    if (_block) {

        _block(address);

    } 

    [self popViewController];

posted @ 2016-06-07 19:29  锦夏ing  阅读(224)  评论(0编辑  收藏  举报