美文网首页
ReactiveCocoa学习随笔 三

ReactiveCocoa学习随笔 三

作者: saintPN | 来源:发表于2016-03-15 13:54 被阅读0次

      经过前面的工作,已经实现了实时监测两个输入信号并作相应的操作,现在下一步要做的就是合并这两个信号;

    RACSignal *signUpActiveSignal =

    [RACSignal combineLatest:@[validUsernameSignal, validPasswordSignal]

    reduce:^id(NSNumber*usernameValid, NSNumber *passwordValid) {

    return @([usernameValid boolValue]&&[passwordValid boolValue]);

    }];

      用combineLatest:reduce:方法把两个信号合并在一起,生成一个新的信号,有任何新值传入,reduce block就会执行,进行相应的处理并输出相应的新信号然后下面就是把新信号和button的状态联系起来,真则enabled,假则disabled

    [signUpActiveSignal subscribeNext:^(NSNumber*signupActive) {

    self.signInButton.enabled =[signupActive boolValue];

    }];

      这样,就实现了当用户名和密码输入有效时,按钮就是可用的.逻辑如下图所示哦:

    相关文章

      网友评论

          本文标题: ReactiveCocoa学习随笔 三

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