RxAndroid使用入门记录
2016-04-07 22:49
357 查看
网上看到rxjava挺火的,而且同学也都在用它,所以自学一下
首先要弄明白rxjava干的是什么
rxjava解决的主要问题是代码的简洁性。当然在一开始的理解上会比较困难。我现在也是一知半解,所以就不忽悠大家了
大家可以先看这篇文章http://gank.io/post/560e15be2dca930e00da1083,对于理解上会有很大帮助
1、先添加依赖
compile 'io.reactivex:rxjava:1.0.14'
compile 'io.reactivex:rxandroid:1.0.1'
2、声明一个Subscriber。我个人理解是Subscriber是用于处理接收到消息,在Subscriber特定方法中实现页面上UI操作
private Subscriber<String> subscriber = new Subscriber<String>() {
@Override
public void onCompleted() {
Log.d(TAG, "onCompleted");
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
Log.d(TAG, "onError");
}
@Override
public void onNext(String t) {
Log.d(TAG, "onNext:" + t);
// mHello.setText(t);
}
};
3、创建一个Observable。在Observable中调用Subscriber中的方法。Observable 即被观察者,它决定什么时候触发事件以及触发怎样的事件。 RxJava 使用 create() 方法来创建一个 Observable ,并为它定义事件触发规则。
Observable<String> stringObservable = Observable.create(new Observable.OnSubscribe<String>() {
@Override
public void call(Subscriber<? super String> subscriber) {
String s = "ni hao";
subscriber.onNext(s);
subscriber.onCompleted();
}
});
4、将Subscriber注入Observable中
stringObservable.subscribeOn(Schedulers.io())//在非UI线程中执行getUser
.observeOn(AndroidSchedulers.mainThread())//在UI线程中执行结果
.subscribe(subscriber);
还需要好好深入了解观察者模式
贴出代码地址https://git.oschina.net/gxw2/RxJavaTest
首先要弄明白rxjava干的是什么
rxjava解决的主要问题是代码的简洁性。当然在一开始的理解上会比较困难。我现在也是一知半解,所以就不忽悠大家了
大家可以先看这篇文章http://gank.io/post/560e15be2dca930e00da1083,对于理解上会有很大帮助
1、先添加依赖
compile 'io.reactivex:rxjava:1.0.14'
compile 'io.reactivex:rxandroid:1.0.1'
2、声明一个Subscriber。我个人理解是Subscriber是用于处理接收到消息,在Subscriber特定方法中实现页面上UI操作
private Subscriber<String> subscriber = new Subscriber<String>() {
@Override
public void onCompleted() {
Log.d(TAG, "onCompleted");
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
Log.d(TAG, "onError");
}
@Override
public void onNext(String t) {
Log.d(TAG, "onNext:" + t);
// mHello.setText(t);
}
};
3、创建一个Observable。在Observable中调用Subscriber中的方法。Observable 即被观察者,它决定什么时候触发事件以及触发怎样的事件。 RxJava 使用 create() 方法来创建一个 Observable ,并为它定义事件触发规则。
Observable<String> stringObservable = Observable.create(new Observable.OnSubscribe<String>() {
@Override
public void call(Subscriber<? super String> subscriber) {
String s = "ni hao";
subscriber.onNext(s);
subscriber.onCompleted();
}
});
4、将Subscriber注入Observable中
stringObservable.subscribeOn(Schedulers.io())//在非UI线程中执行getUser
.observeOn(AndroidSchedulers.mainThread())//在UI线程中执行结果
.subscribe(subscriber);
还需要好好深入了解观察者模式
贴出代码地址https://git.oschina.net/gxw2/RxJavaTest
相关文章推荐
- 设置标题
- Android自定义控件系列七:详解onMeasure()方法中如何测量一个控件尺寸(一)
- android 颜色color.xml文件及部分中英文对照
- 【android】相对布局
- Android 信号处理面面观 之 trace 文件含义
- android studio gradle 获取与更新
- Android 信号处理面面观 之 信号定义、行为和来源
- 一款Android拼图游戏
- Android 点击按钮时改变颜色
- Android 信号处理面面观 之 概述
- Android实现图片滚动控件,含页签功能,让你的应用像淘宝一样炫起来
- Android:inputType常用取值
- [转]Android Thread第二次Thread.start()报错的疑问
- 解决android子控件与父控件滑动冲突的问题
- Android:inputType常用取值
- Android 入门ListView 的基本使用,BaseAdapter的编写
- Android开发:最详细的 Toolbar 开发实践总结
- 【转】Android贪吃蛇源代码
- Running Android Lint错误
- Android QRCodeReaderView 和Camera API冲突