2017-01-05 162 views
0

在我的Android應用程序中,我顯示了用戶照片的列表。照片保存在服務器上,照片數量可能非常大。當用戶要求向他顯示照片時,應用程序首先從服務器獲取,例如10張照片。然後用戶要求顯示下一個10,應用程序加載10個,等等。 我使用rx.Observable加載照片並在訂閱者的onNext()中顯示每個照片。 但是我怎麼能告訴Observable,有多少照片從服務器拉?RxJava Observable,按需發射


已經找到解決 - 使用生產者。這裏是關於生產者的good article

回答

0

我很抱歉在C#中存在這種情況(希望有人可以爲我翻譯)。

你可以試試這個:

var subject = new Subject<int>(); 

var query = 
    from count in subject 
    from image in GetImages(count) 
    select image; 

query 
    .Subscribe(image => 
    { 
     /* do something with each image */ 
    }); 

你只需要定義你的GetImages方法。

現在,當您想調用此代碼時,只需執行subject.OnNext(10)即可獲得10張圖像。

相關問題