赞
踩
RxJava最近两年在Android移动端使用越发的流行起来,但是学习成本稍高。
这一篇博客主要从一个简单的例子开始,设计一下内容:
1、RxJava类库的导入
Android开发中使用RxJava首先需要在gradle文件中导入类库
- implementation 'io.reactivex.rxjava2:rxjava:2.0.1'
- implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
2、RxJava运用实例
- Observable<String> observable = Observable.create(new ObservableOnSubscribe<String>() {
- @Override
- public void subscribe(ObservableEmitter<String> e) throws Exception {
- e.onNext("hello!");
- e.onNext("world!");
- e.onNext("are you ok!");
- }
- });
-
- Observer<String> observer = new Observer<String>() {
- @Override
- public void onSubscribe(Disposable d) {
-
- }
-
- @Override
- public void onNext(String value) {
- Log.d(TAG, "onNext " + value + "");
- }
-
- @Override
- public void onError(Throwable e) {
-
- }
-
- @Override
- public void onComplete() {
-
- }
- };
-
-
- /**
- * 测试rxjava测试
- */
- private void rxTest() {
- observable.subscribe(observer);
- }

结果:
- 09-12 19:35:45.920 30215-30215/hq.demo.net D/NewOkHttpFragment: onNext hello!
- 09-12 19:35:45.920 30215-30215/hq.demo.net D/NewOkHttpFragment: onNext world!
- 09-12 19:35:45.920 30215-30215/hq.demo.net D/NewOkHttpFragment: onNext are you ok!
或者采用链式调用
- /**
- * 测试rxjava测试链式调用
- */
- private void rxTestChain() {
- Observable.create(new ObservableOnSubscribe<String>() {
- @Override
- public void subscribe(ObservableEmitter<String> e) throws Exception {
- e.onNext("hello!");
- e.onNext("world!");
- e.onNext("are you ok!");
- }
- }).subscribe(new Observer<String>() {
- @Override
- public void onSubscribe(Disposable d) {
-
- }
-
- @Override
- public void onNext(String value) {
- Log.d(TAG, "onNext " + value + "");
- }
-
- @Override
- public void onError(Throwable e) {
-
- }
-
- @Override
- public void onComplete() {
-
- }
- });
-
- }

3、RxJava简单分析
RxJava涉及几个角色:
1)Observable :被观察者
2)Observer:观察者
3)subscribe:订阅方法
4)事件
Observer通过subscribe与Observable关联,Observable
可以在其产生变化的时候发出事件来通知 Observer,
其实就是使用了通用的观察者模式。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。