因此,基本上,我有一個片段內一個RecyclerView
,內onCreateView()
設置,也我已經把內部onCreateView()
凌空請求與被懶惰從服務器加載新數據來更新Recycler adapter
。一切工作都很好,直到我開始在頁面之間滑動太快 - 並且因爲onCreateView()被稱爲包圍當前片段而滑動的片段 - volley向服務器發送具有相同參數的多個數據 - 並且我的RecyclerView
獲得了一對夫婦的相同數據時間(取決於我滑動的速度)。ViewPager +排球延遲加載=亂七八糟
我已經把這樣的:
static boolean requestAllowed = true;
@OverRide public View onCreateView() {
inflater etc..
if(requestAllowed) {
requestAllowed = false;
sendingVolleyRequest();
}
然後內sendingVolleyRequest()
,我已經把onResponse()
或onErrorResponse()
requestAllowed = true;
。
但是,它通過了它,併發送請求,無論該語句(可能是線程問題),所以我只是想知道 - 是否有任何解決此問題的好方法,除了禁止發送相同的參數兩次行(如果列表在更新前完成加載後得到更新,將禁止獲取更新)。預先感謝您,並抱歉不提供代碼。
然而,這有幫助 - 我不得不在request方法內部放置requestAllowed條件,而不是在'onCreateView()'方法中工作並像魅力一樣工作,謝謝:) – Sekula1991