如何使用 RxAndroid/Retrofit 将项目添加到一次性 Observable 列表
How to add item to disposable Observable list using RxAndroid/ Retrofit
我正在调用 API 并返回自定义对象列表 (Observable<ArrayList<Pin>>
)。在我将列表发送回订阅者之前,我想添加一个我在本地创建的对象,并且与 API 调用分开。这是我的代码:
val requestInterface = Retrofit.Builder()
.baseUrl(context.resources.getString(R.string.ulr_pins))
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build().create(PinsService::class.java)
disposable.add(requestInterface.getPins()
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
//How do I add a custom Pin object to the list retrieved in requestInterface.getPins before I send it to the callback?
.subscribe(callback))
使用map
操作,你可以通过map
:
将你的数据转换成任何东西
disposable.add(requestInterface.getPins()
.map{ it ->
it.add(customPinObject)
it
}
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(callback))
我正在调用 API 并返回自定义对象列表 (Observable<ArrayList<Pin>>
)。在我将列表发送回订阅者之前,我想添加一个我在本地创建的对象,并且与 API 调用分开。这是我的代码:
val requestInterface = Retrofit.Builder()
.baseUrl(context.resources.getString(R.string.ulr_pins))
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build().create(PinsService::class.java)
disposable.add(requestInterface.getPins()
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
//How do I add a custom Pin object to the list retrieved in requestInterface.getPins before I send it to the callback?
.subscribe(callback))
使用map
操作,你可以通过map
:
disposable.add(requestInterface.getPins()
.map{ it ->
it.add(customPinObject)
it
}
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(callback))