![](/img/trans.png)
[英]Cannot scroll up because of endless scroll - setOnScrollListener
[英]Listview setOnScrollListener scroll up down
我有一個ListView
,我想顯示/隱藏一些有關滾動事件的內容。
當它向下滾動時,我想隱藏ListView上方的一種布局(傳遞給gone
)。 向上滾動時,我要顯示此布局。 我寫了一個有效的代碼,但是有一個問題。
當我緩慢滾動ListView時,我會得到一個非常糟糕的結果:ListView會跳轉(但只有當我緩慢執行時才跳轉)。
這是我的來源:
main_listview.setOnScrollListener(new AbsListView.OnScrollListener() {
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if (mLastFirstVisibleItem > firstVisibleItem) {
Log.e(getClass().toString(), "scrolling up");
_title.setVisibility(View.VISIBLE);
} else if (mLastFirstVisibleItem < firstVisibleItem) {
Log.e(getClass().toString(), "scrolling down");
MainActivity.azercell_title.setVisibility(View.GONE);
}
mLastFirstVisibleItem = firstVisibleItem;
mLastVisibleItemCount = visibleItemCount;
}
public void onScrollStateChanged(AbsListView listView,
int scrollState) {
}
});
如何更改代碼以檢索相同的結果(在滾動中顯示/隱藏內容)卻又不會出現奇怪的跳轉?
嘗試這個 :
listview.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if(firstVisibleItem+visibleItemCount == totalItemCount && totalItemCount!=0)
{
if(flag_loading == false)
{
flag_loading = true;
}
}
}
});
注意:為新的分頁項目設置適配器后
flag_loading = true;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.