1 回答

qq_笑_17
TA贡献1818条经验 获得超7个赞
一般实现滑动监听操作的View会保存一个mActivePointerId变量来记录活动手指。
这个变量一般在MotionEvent.ACTION_DOWN中获取:
mActivePointerId = MotionEventCompat.getPointerId(ev, 0);
而在MotionEventCompat.ACTION_POINTER_UP时,判断抬起手指是否是活动手指,如果是,则重新选择活动手指:
int pointerIndex = MotionEventCompat.getActionIndex(ev);
int pointerId = MotionEventCompat.getPointerId(ev, pointerIndex);
if (pointerId == mActivePointerId) {
int newPointerIndex = pointerIndex == 0 ? 1 : 0;
mActivePointerId = MotionEventCompat.getPointerId(ev, newPointerIndex);
}
添加回答
举报
0/150
提交
取消