2017-07-14 35 views
0

我有這個API接口的Rx Java和改造API調用

@GET("api/..../{commentId}") 
Observable<DiscussionPostRoot> getCommentsInPost(@Path("commentId") String commentId) 

DiscussionPostRoot以前調用的每個項目都有一些領域和對象的名單,該名單中的每個對象我想調用相同的API調用但具有不同的價值。在這一刻,我在做foreach,但API結果出現在不同的時間,我的適配器得到隨機值。該怎麼辦 ;) ?我寧願不拉姆達的答案,但無論如何如果您使用RxJava可以有拉姆達:)

+1

你能說出它目前的樣子嗎?我不完全清楚我理解你的描述/要求。 –

回答

0

(和你的API可觀察來看,你是),你可以用一些數據流的操作是這樣解決的:

https://gist.github.com/tnovoselec/73ba4946d4116e8f05946b5e40a3a031

無論如何,點是先拉根對象,然後從它創建(第一flatmap)一個新的流,則每個對象創建一個新的可觀察到的拉評論(第二flatmap),最後收集所有東西都放到一個可以傳遞給適配器的列表中。

此外,不要忘記添加適當的observeOn()調用,以獲得您的UI線程結果。