• 使用block实现两个页面之间的传统价值观


    第二个view声明一个block属性:

    @property (nonatomic, copy) void(^doTransferMsg)(NSString *_msg);

    然后传值方法里检查block是不是存在

    - (IBAction)transferText:(UIButton *)sender {
      if (_doTransferMsg) {
        _doTransferMsg(@"hello there");
        _doTransferMsg = nil;
      }
      [self.navigationController popViewControllerAnimated:YES];
    }

    主View里。创建第二个view的时候。顺便实现这个block

    - (IBAction)LoadDetailView:(UIButton *)sender {
      [ibTextLabel setText:nil];
      DetailViewController *_curDetail = [[DetailViewController alloc] initWithNibName:@"DetailViewController"
                                                                                bundle:nil];
      [_curDetail setDoTransferMsg:^(NSString *_msg) {
        dispatch_async(dispatch_get_main_queue(), ^{
          [ibTextLabel setText:_msg];
        });
      }];
      [self.navigationController pushViewController:_curDetail
                                           animated:YES];
      [_curDetail release];
    }

    that’s all

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    1225. 岛的周长
    238. Product of Array Except Self除自身以外数组的乘积
    RxJava--Buffer,GroupBy 对比
    RxJava--Buffer,GroupBy 对比
    HDU-2182-Frog
    HDU-2182-Frog
    Linux下必知必会文件和目录
    Linux下必知必会文件和目录
    获取一篇新闻的全部信息
    获取一篇新闻的全部信息
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4685579.html
Copyright © 2020-2023  润新知