我需要實現一個recyclerView顯示我的查詢上解析實現懶加載recyclerView適配器一樣的境界recyclerView適配器,所以我已經做到了:如何使用科特林
private class Pagination extends RecyclerView.OnScrollListener{
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
visibleItemCount = manager.getChildCount();
totalItemCount = manager.getItemCount();
firstVisibleItemPosition = manager.findFirstVisibleItemPosition();
if (!isLoading && !isLastPage) {
if ((visibleItemCount + firstVisibleItemPosition) >= totalItemCount
&& firstVisibleItemPosition >= 0
&& totalItemCount >= PAGINATION) {
isLoading = true;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
loadData();
}
}, 2000);
}
}
}
}
,而且運作良好。但是幾個月前,我使用了無分頁工作的realm recyclerView適配器(並且它工作得非常好,因爲我有50k個項目可以顯示),我想製作一個這樣的適配器。我也用科特林,我已經看到了懶惰變量的概念:
val lazyValue: String by lazy {
println("computed!")
"Hello"
}
,但我不知道如何使用它,以使適配器出於這個原因:現在,當我做一個查詢解析它是這樣的:
val dishes = ParseQuery.getQuery<ParseObject>("Books").setSkip(index).setLimit(pagination)
dishes.findInBackground { objects, e -> e?.let { listener?.onPaginationError(e.message) } ?:run { createNewDish(objects,listener,false) } }
它是如何工作的,當我使用懶惰的方法?我需要下載所有項目,或者我還需要分頁?
謝謝你的幫助。
你到底想用什麼懶? – chandil03
@ chandil03等待從Parse到達的列表
這種情況下不使用懶惰函數。當您希望在第一次方法調用時加載資源時,會使用懶惰函數,而不是初始化變量。 – chandil03