输出[[self.usernameTextField.rac_textSignalfilter:^BOOL(NSString*text){returntext.length>3;}]subscribeNext:^(idx){NS" />

ReactiveCocoa学习笔记--用法

系统 1645 0

1、监测UI变量的变化

return 后把值传递下去。

1.1、输出

      [self.usernameTextField.rac_textSignal subscribeNext:^(id x){

  NSLog(@"%@", x);

}];


    

 1.2、过滤->输出

      [[self.usernameTextField.rac_textSignal

  filter:^BOOL(NSString*text){

    return text.length > 3;

  }]

  subscribeNext:^(id x){

    NSLog(@"%@", x);

  }];


    

 

 1.3、改变数据类型->过滤->输出

      [[[self.usernameTextField.rac_textSignal

  map:^id(NSString*text){

    return @(text.length);

  }]

  filter:^BOOL(NSNumber*length){

    return[length integerValue] > 3;

  }]

  subscribeNext:^(id x){

    NSLog(@"%@", x);

  }];


    

 1.4、subscribeNext的另一种写法

RAC宏允许直接把信号的输出应用到对象的属性上。RAC宏有两个参数,第一个是需要设置属性值的对象,第二个是属性名。每次信号产生一个next事件,传递过来的值都会应用到该属性上

      RAC(self.passwordTextField, backgroundColor) =

  [validPasswordSignal

    map:^id(NSNumber *passwordValid){

      return[passwordValid boolValue] ? [UIColor clearColor]:[UIColor yellowColor];

    }];


    

 

ReactiveCocoa学习笔记--用法


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论