Android RxAndroid和RxJava2在Kotlin中的使用

2019-10-22 14:46:16 浏览数 (1)

引用

代码语言:javascript复制
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.10'

Github地址

使用

延迟执行

Kotlin

代码语言:javascript复制
Observable.timer(1000, TimeUnit.MILLISECONDS)
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe {  }

多线程

常用的方式是分线程中处理数据,主线程中使用数据生成页面

Kotlin

代码语言:javascript复制
Observable
        .create<List<TreeItemModel>> { source ->
            var treeList = arrayListOf<TreeItemModel>()
            source.onNext(treeList)
            source.onComplete()
        }
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe({ treeList ->
            print(treeList.size)
        }, { error ->
            print(error.localizedMessage)
        })

0 人点赞