Android 如何 ListView 判断滚动到最顶部或者底部

2024-11-14 12:56:03
推荐回答(1个)
回答1:

可以设置ListView的滚动事件
ListView.setOnScrollListener(OnScrollListener listener)
OnScrollListener是滚动事件监听接口
有两个需要实现的方法
public void onScrollStateChanged(AbsListView view, int scrollState) ;
public void onScroll(AbsListView view, int firstVisibleItem,int visibleItemCount, int totalItemCount) ;
几个参数的意义分别为
AbsListView view所监听的listview对象
int firstVisibleItem能看见的第一个item的位置
int visibleItemCount能看见的item的数量
int totalItemCount所有item的总数
代码如下,我们在onScroll中进行判断
lvMatch.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 == 0){
//已滚动到最顶部
}
if(firstVisibleItem+visibleItemCount == totalItemCount){
//滚动到底部
}
}
});