我正在構建一個應用程序,並使用了Observable中的Arraylist。在那個列表中我有20個項目。前10個項目在第1頁上,第10個項目在第2頁上。但是,當我進入第2頁時,前10個項目被刪除,並且僅顯示來自第2頁的10個項目,但我不知道那是什麼。我想在第2頁顯示所有20個項目,而不僅僅是第2頁中的10個項目。 你能幫我嗎?爲什麼當我到第2頁時,ArrayList中第一頁的項目被刪除?
這是我的代碼:
ideaService.getIdeas(page)
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<ArrayList<Item>>() {
@Override
public void onCompleted() {
if (ideaAdapter.getItemCount() > 0) {
ideaAdapter.notifyDataSetChanged();
//ideaAdapter.setLoaded();
// startingText.setVisibility(View.GONE);
//mRecycleView.setVisibility(View.VISIBLE);
}
else {
startingText.setText(getString(R.string.no_ideas));
}
if (mSwipeRefreshLayout.isRefreshing()) {
mSwipeRefreshLayout.setRefreshing(false);
}
ideaAdapter.setLoaded();
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
dialog.show();
}
@Override
public void onNext(ArrayList<Item> items) {
//Remove loading item
//ideaAdapter.getmItems().remove(ideaAdapter.getmItems().size() - 1);
//ideaAdapter.notifyItemRemoved(ideaAdapter.getmItems().size());
ideaAdapter.clear();
ideaAdapter.setList(items);
Log.d("Array", "arrayListONE " + ideaAdapter.getmItems().size());
}
});
}
});
如果我有,例如50個項目(10項每頁)? –
有一些基於ID的方法,所以你可以正確的subList數組列表 – Sush