函数响应式编程_RxAndroid,RxJava最核心的两个东西是Observables(被观察者,事件源)和Subscribers(观察者)。Observables发出一系列事件,Subscribers处理这些事件。这里的事件可以是任何你感兴趣的东西(触摸事件,web接口调用返回的数据。。。)
一个Observable可以发出零个或者多个事件,知道结束或者出错。每发出一个事件,就会调用它的Subscriber的onNext方法,最后调用Subscriber.onCompleted()或者Subscriber.onError()结束。
添加Gradle配置
compile 'io.reactivex:rxandroid:1.1.0' // RxAndroid
初步使用
注册观察活动
@SuppressWarnings("unchecked")
private Observable<String> observable;
// 注册观察活动
observable = Observable.create(mObservableAction);
订阅事件
// 订阅者, 接收字符串, 修改控件
Subscriber<String> mTextSubscriber = new Subscriber<String>() {
@Override public void onCompleted() {
}
@Override public void onError(Throwable e) {
}
@Override public void onNext(String s) {
tv_content.setText(s); // 设置文字
}
};
// 分发订阅信息
observable.observeOn(AndroidSchedulers.mainThread());
observable.subscribe(mTextSubscriber);
效果如下: