block 反向传值回调

/**

 *  block 反向传值回调

 */

 

//在第二个控制器中

//   (1)声明block,在基类中已写好

//   (2)写好传值方法

//(1)

typedef void (^ReturnMessageBlock)(id *showText);

 

@property (nonatomic, copy) ReturnMessageBlock returnMessageBlock;

 

- (void)returnMessage:(ReturnMessageBlock)block;//方便第一个控制器调用block

 

 

//(2)

- (void)returnMessage:(ReturnMessageBlock)block {

    self.returnMessageBlock = block;

    

}

- (void)viewWillDisappear:(BOOL)animated {

    

    if (self.returnMessageBlock != nil) {

        //-----反向传值----

        self.returnMessageBlock(self.nickNameTextField.text);

    }

}

 

 

//在第一个控制器中

//(1)通过调用第二个控制器的block 将传来的值显示在相应位置上

JYEMineModifyNickNameViewController * modifyNickNameController = [[JYEMineModifyNickNameViewController alloc] init];

/**

 *  反向传值block

 */

[modifyNickNameController returnMessage:^(id showText) {

    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

    cell.detailTextLabel.text = showText;

}];

 

posted @ 2016-01-21 15:05  偶阵雨ss33  Views(294)  Comments(0Edit  收藏  举报