android 完美计算ListViewd滑动方向的方法

实现该功能需要用到listview的setOnScrollListener这个监听器。

private boolean scrollFlag = false;// 标记是否滑动

private int lastVisibleItemPosition;// 标记上次滑动位置

@Override

public void onScrollStateChanged(AbsListView view, int scrollState) {

// TODO Auto-generated method stub

if (scrollState == OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {

scrollFlag = true;

} else {

scrollFlag = false;

}

}

@Override

public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

Log.d("dc", "firstVisibleItem::" + firstVisibleItem +

":visibleItemCount:" + visibleItemCount + ":totalItemCount:" +

totalItemCount);

if (scrollFlag) {

if (firstVisibleItem > lastVisibleItemPosition) {

Log.d("dc", "上滑");

}

if (firstVisibleItem < lastVisibleItemPosition) {

Log.d("dc", "下滑");

}

if (firstVisibleItem == lastVisibleItemPosition) {

return;

}

lastVisibleItemPosition = firstVisibleItem;

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容