/**
* 滑动监听
* onScrollListener通常在ListView中用到,滑动监听并且控制对应的view
*/
private void initListener() {
onScrollListener = new () {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
//正在滚动时回调,回调2-3次,手指没抛则回调2次。scrollState = 2的这次不回调
//回调顺序如下 :
//第1次:scrollState = SCROLL_STATE_TOUCH_SCROLL(1) 正在滚动
//第2次:scrollState = SCROLL_STATE_FLING(2) 正在滚动(手指离开屏幕前,用力滑了一下)
//第3次:scrollState = SCROLL_STATE_IDLE(0) 停止滚动
//当屏幕停止滚动时为0;当屏幕滚动且用户使用的触碰或手指还在屏幕上时为1;
//由于用户的操作,屏幕产生惯性滑动时为2 。
//当滚到最后一行且停止滚动时,执行加载
switch (scrollState) {
case .SCROLL_STATE_TOUCH_SCROLL:
break;
case .SCROLL_STATE_FLING:
break;
case .SCROLL_STATE_IDLE:
//滑动停止自动播放视频
autoPlayVideo(view);
break;
default:
break;
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
//滚动时一直回调,直到停止滚动时才停止回调。单击时回调一次。
//firstVisibleItem:当前能看见的第一个列表项ID(从0开始)
//visibleItemCount:当前能看见的列表项个数,总共的个数 ,小半个也算一个
//totalItemCount:ListView列表项总数
//判断是否滚到最后一行
if (firstVisibleItem + visibleItemCount == totalItemCount && totalItemCount > 0) {
// (, "小可爱,已经到了最后一个视频了", Toast.LENGTH_SHORT).show();
}
}
};
// 配置
(onScrollListener);
}
我的Android视频播放器小demo:基于JiaoZiVideoPlayer的仿今日头条视频播放器
欢迎star,会持续更新的哦