zoukankan      html  css  js  c++  java
  • Block 传值

    A 界面:

    - (IBAction)gotoVC:(id)sender {

        //必须在事件发生时调用Block,每次Block对应一次初始化

        cvc = [[CViewController alloc]initWithNibName:@"CViewController" bundle:nil];   

        [cvc returenText:^(NSString *str) {//调用block

            self.A.text = str;

        }];    

        [self presentViewController:cvc animated:YES completion:nil];

    }

    或者:不能再viewDidLoad里面初始化调用block 又使用其他方式跳转(如在viewdidload里面初始化而使用segue跳转,因为segue又初始化一遍了)。

    -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

        BVCViewController*bvc0 = segue.destinationViewController;

        [bvc0 returenText:^(NSString *str) {

            self.A.text = str;

        }];

    }

    B 界面

    .h 文件

    typedef void(^ReturnTextStr)(NSString*str); //定义一个block

    @property(nonatomic,strong)ReturnTextStr returnStrBlock;//声明一个定义好的block

    -(void)returenText:(ReturnTextStr)block;//block方法

     

    .m文件

    -(void)returenText:(ReturnTextStr)block{

        _returnStrBlock = block;

    }

    - (IBAction)back:(id)sender {   //回调 

        [self dismissViewControllerAnimated:YES completion:^{    

            if (_returnStrBlock != nil ) {

                _returnStrBlock(self.blockTEXT.text);

            }

        }];   

    }

  • 相关阅读:
    黑盒测试方法用例设计详解
    跨域
    HTTP Referer
    Java抽象类和接口
    深入理解Java垃圾回收机制
    Java异常处理机制
    hash
    JUint4的下载、配置及对一个算法编写单元测试用例(测试多组数据每组多个参数)
    get和post的区别
    Mac 文档阅读软件Dash软件破解版
  • 原文地址:https://www.cnblogs.com/mapanguan/p/5455543.html
Copyright © 2011-2022 走看看