Listview setOnScrollListener 向上向下滚动
Posted
技术标签:
【中文标题】Listview setOnScrollListener 向上向下滚动【英文标题】:Listview setOnScrollListener scroll up down 【发布时间】:2014-10-06 14:53:18 【问题描述】:我有一个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)
);
如何更改我的代码以检索相同的结果(在滚动时显示/隐藏内容)但又不会出现一些奇怪的跳转?
【问题讨论】:
【参考方案1】:试试这个:
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;
【讨论】:
不,你可能不理解我。我想显示我的布局 listview 向上滚动并隐藏 listview 向下滚动以上是关于Listview setOnScrollListener 向上向下滚动的主要内容,如果未能解决你的问题,请参考以下文章