在一个android项目中,我有一个这样的声明:
import io.reactivex.Completable
import io.reactivex.Single
val itemsList: Single<List<T>> = getItems()
我需要从 itemsList 获得第一项。
我该怎么做?
答案 0 :(得分:1)
由于您的Single
类型为List<Item>
,当您将其提取到apiRepositoryObject
-网络层对象上时,将得到单个List<Item>
或异常< / p>
apiRepositoryObject.getItems()
.subscribe(listOfItems -> {
// The list of item should be handled here
},Throwable::printStackTrace);
答案 1 :(得分:1)
val itemsList: Single<List<T>> = getItems()
itemsList
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.map{list -> list.first()}
.subscribeBy(
onComplete = { firstItem -> {/* use your first item here */} },
onError = { error -> {/* error handling */} }
)