好吧,你可以吃这样的东西:
var bitmapLiveData: MutableLiveData<Bitmap> = MutableLiveData()
fun createBitmap(): LiveData<Bitmap> {
var observable : Observable<Bitmap> = Observable.just(makeBitmap(path))
val result = observable.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe({
result ->
bitmapLiveData.postValue(result)
},{
error->
error.printStackTrace()
},{
//completed
})
return bitmapLiveData
}
我把它放在一个可以被生命周期拥有者观察到的视图模型中:
viewModel.createBitmap().observe(this, Observer {
it?.let {
//result bitmap
}
})