1、textField输入有变化时,产生next事件
[self.usernameTextField.rac_textSignal subscribeNext:^(id x){ NSLog(@"%@",x); }];
2、 超过3个字符长度的用户名,输出next事件
[[self.usernameTextField.rac_textSignal filter:^BOOL(id value){
<span style="color: rgb(0,130,0); font-family: Consolas,'Bitstream Vera Sans Mono','Courier New',Courier,monospace; font-size: 14px; white-space: pre;">//隐式转换</span> NSString*text = value; return text.length > 3; }] subscribeNext:^(id x){ NSLog(@"%@",x); }];可以直接写成
[[self.usernameTextField.rac_textSignal filter:^BOOL(NSString*text){ return text.length > 3; }] subscribeNext:^(id x){ NSLog(@"%@",x); }];
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
分开写就是
RACSignal的每个操作都会返回一个RACsignal,这在术语上叫做连贯接口(fluent interface)。这个功能可以让你直接构建管道,而不用每一步都使用本地变量。
RACSignal *usernameSourceSignal = self.usernameTextField.rac_textSignal; RACSignal *filteredUsername =[usernameSourceSignal filter:^BOOL(id value){ NSString*text = value; return text.length > 3; }]; [filteredUsername subscribeNext:^(id x){ NSLog(@"%@",x); }];
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。