2017-06-30 19 views
0

複数のレトロフィットコールを一度に処理したいのですが、私はrxjava2を使用しています。しかしObservable.zipメソッドを解決することはできませんが、おそらくそれは非常に些細な間違いですが、それを得ることはできません。ラムダ式で解決されることはわかっていますが、それをなくして動作させる方法を知りたい。Function4でObservable.zipメソッドを解決できません

Single<List<A>> observableA; 
Single<List<B>> observableB; 
Single<List<C>> observableC; 
Single<List<D>> observableD; 

listA = retofitCall(); 
// .... 

io.reactivex.Observable.zip(observableA, observableB, observableC, observableD, new Function4<List<A>, List<B>, List<C>, List<D>, Bundle>() { 
     @Override 
     public Bundle apply(List<A> listA, List<B> listB, List<C> listC, List<D> listD) throws Exception { 
      return new Bundle(listA,listB,listC,listD); 
     } 
    }); 

バンドルオブジェクト:

public class Bundle { 
List<A> listA ; 
List<B> listB ; 
List<C> listC ; 
List<D> listD ; 

public Bundle(List<A> listA, List<B> listB, List<C> listC, List<D> listD) { 
    this.listA = listA; 
    this.listB = listB; 
    this.listC = listC; 
    this.listD = listD; 
} 
} 

おかげ

+0

のSingle.zipを使用しているということです何も起こりません – GVillani82

+0

問題はサブスクライブしていない、問題はObservable.zipでコンパイル時にエラーが発生し、私はzipメソッドを解決できないことを示しています。とにかく入力のためにありがとう:) – Fabio

+1

あなたは 'Single.zip'が必要です。 – akarnokd

答えて

0

問題は、私が代わりにあなたが加入していない限りObservable.zip

関連する問題