簡體   English   中英

如何“返回”值(清單 <Myobject> )使用RxJava從Api調用到主線程?

[英]how to “return” value(List<Myobject>) from Api call to main thread using RxJava?

這是我的ApiService接口:

 @GET("dianosticos")
Observable<List<Diagnostico>> getDiagnosticos(@Query("nombre") String patron);

這是我的ApiUtil

 RxJava2CallAdapterFactory rxAdapter = RxJava2CallAdapterFactory.create();

        retrofit = new Retrofit.Builder()
                .baseUrl(baseUrl)
                .addConverterFactory(GsonConverterFactory.create())
                .addCallAdapterFactory(rxAdapter)
                .build();

這是我的嘗試:

public List<Diagnostico> getDiagnoticos(String patron){
    APIService api= ApiUtils.getAPIServiceDos();
    api.getDiagnosticos(patron).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
            .subscribe(new Subscriber<List<Diagnostico>>() {
                       // from here all this methods are underlined as error
                @Override
                public void onSubscribe(Subscription s) {

                }

                @Override
                public void onNext(List<Diagnostico> diagnosticos) {

                }

                @Override
                public void onError(Throwable t) {

                }

                @Override
                public void onComplete() {

                }
// up to here all underlined
            })
}

我需要列表並將其放入例如用於適配器或以其他方法求和,因此我需要將列表返回到主線程..我的代碼可以嗎? 還是我應該以不同的方式做。 請告訴我如何返回此列表。 提前致謝

在RxJava 2中, Observable類的“訂閱者”是Observer 這是因為適用於Flowable對象的Reactive Streams標准使用了Subscriber接口。

這意味着您應該用Observable類之一替換Subscriber對象。 建議使用DisposableObserver ,因為它可以處理基本的Subscription和協議要求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM