美文网首页
页面间的block传值(B -> A)

页面间的block传值(B -> A)

作者: 伟伟机器人 | 来源:发表于2017-08-09 09:11 被阅读0次

    //在B页面的.h中写一个指针函数(结构体),带参数,用户进行传值
    //在B页面的.h中声明一个指针类型的变量
    //例如:

    import <UIKit/UIKit.h>

    @interface BViewController : UIViewController
    typedef void(^PostString)(NSString *str);//定义一个指针函数
    @property (nonatomic,copy)PostString mblock;//定义一个结构体对象
    //在B页面的.m中Button对象的方法中使用block函数

    • (void)buttonAciton{
      //打印返向传值
      NSLog (@"反向传值");
      if (self.mblock) {
      self.mblock(self.textField.text);
      }
      [self dismissViewControllerAnimated:YES completion:nil];
      }
      //在A页面的.m中中Button对象的方法中使用block函数
    • (void)buttonAciton{
      AViewController * vc = [[AViewController alloc]init];
      //block变量的值等于B页面穿过来的值
      vc.mblock = ^(NSString * str) {
      self.textField.text = str;
      };
      //模态推出下一页
      [self presentViewController:vc animated:YES completion:nil];

    }

    相关文章

      网友评论

          本文标题:页面间的block传值(B -> A)

          本文链接:https://www.haomeiwen.com/subject/awlfrxtx.html