美文网首页
block传值

block传值

作者: 精神薇 | 来源:发表于2018-02-08 23:31 被阅读0次
1.block作属性

发送者

@property (nonatomic,copy) void (^changeBgColor)(UIColor *color);
if (_changeBgColor) {   // 代码块属性不为空
    _changeBgColor(color);
}

接收者

// 下列第一句是弱化操作,防止在文件中循环引用:
__weak typeof(self) weakSelf = self;
[testVC setChangeBgColor:^(UIColor *color) {
    weakSelf.view.backgroundColor = color;
}];
2.block作参数
//方法中定义了一个block数据类型参数(返回值为int类型的,且带有一个int类型的形参)
-(void)calculate:(int (^)(int))calculateBlock
{
    //calculateBlock接受外界传入的代码块,也就意味着怎么去操作是由外界调用者决定的
    _result = calculateBlock(_result);//将_result的值作为实参传入
}
[manager calculate:^int(int i) {
        //参数i自加1,然后返回
        i++;
        return i;
}];

相关文章

  • iOS开发-block传值

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

  • iOS-block总结

    block回调-传值 其实就是block作为参数传值方:类的.h有block属性,类的.m有block调用(传值,...

  • Block传值

    iOS传值一共有四种:属性传值,代理传值,通知传值以及Block传值; 今天我们来说一下Block传值: 概念:带...

  • oc中使用delegate和block进行反向传值

    delegate传值 block实现传值

  • iOS开发之利用Block逆向传值

    一、书写规范Block传值,需要注意的是,谁传值就需要定义Block,捕获方仅仅需要传递Block给传值方,并处理...

  • block开发使用场景

    block传值 利用block去代理代理传值 1. 代理传值 点击当前控制器Viewcontroller利用mod...

  • Block 之传值

    传值流程: 定义一个 block 在A实例中,传值给 block 在B实例中,实现block,获取到值 .h文件 ...

  • iOS 传值方式

    1,从前向后传值:属性传值 2, 从后向前传值: block、 代理、 通知 结论1, block、 代理 传值用...

  • iOS 传值的方式的区别

    1.属性传值。 2.block传值。 3.代理传值(delegate) 4.通知传值(notification)。...

  • iOS页面传值

    常用 + 代码 属性传值 方法传值 Block Delegate NSNotificationCenter传参 N...

网友评论

      本文标题:block传值

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