ListView的滑动监听基本都是在onTouchEvent中实现的,即使是API中的监听,也是通过在onTouchEvent中实现的,借用SwipeListView开源中的几行代码,记录下ListView上下滑动的监听实现:
核心代码简单实现如下,具体内容可以参考下SwipeListView:
.........
@Override
public boolean onTouchEvent(MotionEvent ev) {
float lastX = ev.getX();
float lastY = ev.getY();
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
mDownY = ev.getRawY();
break;
case MotionEvent.ACTION_MOVE:
float dx = lastX - mFirstX;
float dy = lastY - mFirstY;
float currentY = ev.getRawY();
if (mMoveTouchListener != null) {
if (currentY - mFirstDownY >= MOVE_DISTANCE) {