Android Gridview OnScrollListener ScrollUp和ScrollDown事件

前端之家收集整理的这篇文章主要介绍了Android Gridview OnScrollListener ScrollUp和ScrollDown事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有gridview,我需要做两件事:

当我向下滚动时,我想找到最后一个可见位置,例如int index = GridView.getLastVisiblePosition();

当我向上滚动时,我想找到第一个可见位置,例如int index = GridView.getFirstVisiblePosition();

我知道我可以使用以下代码,但我不确定如何以及在何处为ScrollUp和ScrollDown编写代码.请帮我.我是Android新手.

private OnScrollListener onAnsweRSScrolled = new OnScrollListener() {

    @Override
    public void onScrollStateChanged(AbsListView view,int scrollState) {
    }
}

解决方法

在你的活动中创建全局变量myLastVisiblePos,并为每个FirstVisiblePosition保存,当onScroll事件检查当前FirstVisiblePosition时保存的FirstVisiblePosition如果greate比上次保存的FirstVisiblePosition那么scrollUp如果小则滚动:
int myLastVisiblePos;// global variable of activity

//save first value when you create GridView
GridView gridView = (GridView) gv.findViewById(R.id.grid_view);
myLastVisiblePos = gridView.getFirstVisiblePosition();

gridView.setOnScrollListener( new OnScrollListener() {
    @Override
    public void onScroll(AbsListView view,int firstVisibleItem,int visibleItemCount,int totalItemCount) {
            int currentFirstVisPos = view.getFirstVisiblePosition();
            if(currentFirstVisPos > myLastVisiblePos) {
                //scroll down
            }
            if(currentFirstVisPos < myLastVisiblePos) {
                //scroll up
            }
            myLastVisiblePos = currentFirstVisPos;
    }
});

猜你在找的Android相关文章