Android|Android RxAndroid使用

实现类似定时器功能

  1. 依赖
compile 'io.reactivex.rxjava2:rxandroid:2.0.1' compile 'io.reactivex.rxjava2:rxjava:2.1.3'

【Android|Android RxAndroid使用】2.布局文件中只是简单的TextView控件来显示文本。目前涉及到及所了解的RxAndroid与RxJava中多用到的是 .observeOn(AndroidSchedulers.mainThread()),通知主线程这一块,其它不同还未涉及到。RxAndroid在使用时使用RxJava(Java RxJava学习使用)中的方法,
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView textView = (TextView) findViewById(R.id.textView); Observable .just("one", "two", "three", "four", "five")// 数据源 .map(new Function() { @Override public String apply(@NonNull String s) throws Exception { Log.e("TAG",Thread.currentThread().getName()); // 打印io线程名 Thread.sleep(1000); // 线程睡眠1秒钟 return s; } }) .subscribeOn(Schedulers.io()) // 将以上代码订阅在io线程 .observeOn(AndroidSchedulers.mainThread()) // 通知主线程 .subscribe(new Consumer() { // 主线程订阅 @Override public void accept(String s) throws Exception { Log.e("TAG",Thread.currentThread().getName()); // 打印当前线程名 textView.setText(s); } }); }

    推荐阅读