您需要爲您的listview實現一個onTouch()
事件來檢測用戶的觸摸模式。下面是我會怎麼處理這一個僞代碼:
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
switch (motionEvent.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
//Get the X and Y values the user touched down first
mDownX = motionEvent.getRawX();
mDownY = motionEvent.getRawY();
break;
case MotionEvent.ACTION_MOVE: {
float deltaX = motionEvent.getRawX() - mDownX;
float deltaY = motionEvent.getRawY() - mDownY;
if (deltaX > myMoveToTheRightThreashold
&& Math.abs(deltaY) < myNoYmoveThreashold) {
moveToRight = true;
}
if (moveToRight && deltaY > myMoveUpThreshold) {
myLShapedGesture = true;
return true;
}
break;
}
return false;
}
我根本不考這個,我只是想給你如何處理的想法。您可能需要添加一個case MotionEvent.ACTION_UP
來檢測用戶何時停止觸摸設備並在那裏執行所需的操作。
希望它有幫助。
謝謝你給我一些關於如何去做的想法。讓我試試這些代碼,如果我做到了,我會回到這裏。謝謝。 –