美文网首页
Block开发使用场景(传值)

Block开发使用场景(传值)

作者: cjdale | 来源:发表于2018-07-02 22:56 被阅读0次

通常我们传值分为顺传和逆传:
顺传:给需要传值的对象定义属性来传值。
逆传:代理, 通知,单例,block等。
此篇文章我们介绍Block用于逆向传值。

假设场景:由A控制器push到B控制器, B控制修改了一个字符串的值,需要传值给A控制器。

1、B控制器中定义block属性
@property (nonatomic,strong) void(^passValueBlock)(NSString *value);
2、A控制器中给B控制器block属性赋值
SecondViewController *secondVc = [[SecondViewController alloc] init];
secondVc.passValueBlock = ^(NSString *value) {
    
};
[self.navigationController pushViewController:secondVc animated:YES];

此处SecondViewController 就相当于B控制器

3、在B控制器需要传值的逻辑控制代码中调用block
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
if (self.passValueBlock) {
    self.passValueBlock(@"name");
}

}

相关文章

  • iOS开发-block传值

    block传值步骤比代理传值步骤简便,实际开发中经常使用到。 block传值分为block属性传值和block方法...

  • Block开发使用场景(传值)

    通常我们传值分为顺传和逆传:顺传:给需要传值的对象定义属性来传值。逆传:代理, 通知,单例,block等。此篇文章...

  • Block开发使用场景(参数,返回值)

    前面介绍了Block用于保存代码,传值的使用场景,这篇blog介绍Block用作方法参数以及返回值 1、用作参数 ...

  • 代理、block传值、变量传递

    传值可以使用通知、代理、block 场景:ViewController通过点击屏幕modal跳转到ModalVie...

  • block开发中使用场景

    block 开发中使用场景 适合新手理解 熟悉 运用到项目中 block开发中使用场景 1.把block保存到对象...

  • Block使用--值得一看

    Block的使用场景: 1、作为本地变量 语法: 实现过程: 2、作为属性(可以反向传值时使用) 语法 实现过程 ...

  • iOS 常用传值方式

    总结 iOS 日常开发中的几种常用传值方式:正向传值代理传值block传值通知传值单例 文章代码:https://...

  • Block内存管理

    在平时的开发中我们经常使用block来传值和事件传递,但是block的使用很容易造成循环引用(我引用你 你引用我 ...

  • block使用场景(2)-传值

    1.在PickViewController.h中声明block 属性 @property (nonatomic,s...

  • block到底是什么?我们为什么要用block

    开发中,block一般应用于反向传值,回调函数,使用block,代码紧凑易读,实在是给开发维护带来极大方便,但是b...

网友评论

      本文标题:Block开发使用场景(传值)

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