の位置のリストを出力するObservableがあります。これらのLocationオブジェクトはユーザ(実際には?)を返すメソッドgetUser()
を持っています。私がしようとしているのは、Locationオブジェクトのこのリストを与えられたUserオブジェクトのリストを発行する新しいObservableを返すことです。ここに私のコードです:観察可能Rx JavaでObservable.from()演算子を適用した後で項目を再連結します
場所は
private Observable<List<QBLocation>> retrieveLocations(){
QBLocationRequestBuilder getLocationsBuilder = new QBLocationRequestBuilder();
getLocationsBuilder.setPerPage(100);
getLocationsBuilder.setLastOnly();
getLocationsBuilder.setCurrentPosition(mLastLocation.getLatitude(), mLastLocation.getLongitude());
getLocationsBuilder.setSort(SortField.CREATED_AT);
getLocationsBuilder.setSort(SortField.DISTANCE, SortOrder.DESCENDING);
return Observable.create(subscriber -> {
Bundle mBundle = new Bundle();
try {
ArrayList<QBLocation> qbLocations = QBLocations.getLocations(getLocationsBuilder, mBundle);
subscriber.onNext(qbLocations);
subscriber.onCompleted();
} catch (QBResponseException e) {
subscriber.onError(e);
}
});
}
ユーザー観察可能
@Override
public Observable<List<QBUser>> retrieveUsers() {
return retrieveLocations()
.flatMap(qbLocations -> Observable.from(qbLocations))
.flatMap(qbLocation -> qbLocation.getUser())
//How do I return an observable list with these users?
}
あなたがリストに戻ってあなたのアイテムを収集するために
toList()
演算子を使用することができます
私は 'ToListメソッド()'メソッドを追加した場合、私は**巡回を取得推論** 'qbLocation - > qbLocation.getUser()'でのリントエラー。 – regmoraes