после того, как оператор toList выполняет, оригинал Flowable < < \ Список >> конвертирует в Single < < \ List >>. и получается, если я создаю Consumer для подписки на Single, , тип потребительского значения не может быть изменен кроме Object?Не удается разрешить метод 'subscribe (anonymous io.reactivex.functionx.Consumer <java.util.List <...>>)' в rxjava2?
@Override
public void loadBannerData(final ADFilterType adFilterType) {
remoteListDataSource.getBannerListData(adFilterType)
.flatMap(new Function<List<BannerBeanList.BannerBean>, Publisher<?>>() {
@Override
public Publisher<?> apply(List<BannerBeanList.BannerBean> bannerBeen) throws Exception {
return Flowable.fromIterable(bannerBeen);
}
})
.toList()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
/******************************Consume Value Type**************************
.subscribe(new Consumer<List<BannerBeanList.BannerBean>>() {
@Override
public void accept(List<BannerBeanList.BannerBean> bannerBeens) throws Exception {
mainTabView.showMainBanner(bannerBeens);
}
});
*****************************************************************************/
}
Это происходит потому, что у вас есть 'Publisher >' вместо 'Publisher' в вашем коде. –
akarnokd
@akarnokd thanks, я должен указать тип элемента, который должен быть опубликован. – Qin