用ScrollView.setOnTouchListener();当手离开屏幕还会继续滚动
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()){
case MotionEvent.ACTION_UP:
handler.sendMessageDelayed(handler.obtainMessage(), 5);
break;
}
return false;
}
private int lastScrollY;
private Handler handler = new Handler() {
public void handleMessage(android.os.Message msg) {
int scrollY = scrollView.getScrollY();
if(lastScrollY != scrollY){
if(lastScrollY > scrollY){//在向下滚动
int height = scrollView.getHeight();
int scrollViewMeasuredHeight = scrollView.getChildAt(0).getMeasuredHeight();
if(scrollViewMeasuredHeight == scrollY +height ){//滚动到底部
}
}else{//在向上滚动
if(scrollY == 0){}//滑动到顶部
}
lastScrollY = scrollY;
handler.sendMessageDelayed(handler.obtainMessage(), 5); //此时的距离和记录下的距离不相等,隔5毫秒给handler发送消息
}
};
};