总括
- 总诀:RC打破target-action、代理方法、KVO、回调,将之概括为创建信号+信号订阅
- 最大作用:不需要私有属性来监测短暂的变化
一、基本流程
1. 创建信号
- 利用RC封装好的UI控件创建信号
textField.rac_textSignal;//UITextField
[button rac_signalForControlEvents:];//UIButton
- 手动创建信号
[RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) {
}];
2. 信号订阅
[signal subscribeNext:^(id x) {
}];
二、信号种类
- next事件
- error事件
- completed事件
三、信号处理
种种变化,用以分(filter)、转(map)、合(combine)演变。
四、注意
- doNext与subscribeNext一起用时,doNext里对UI修改不起作用
- flattenMap与map区别
网友评论