protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.tv1).setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
Log.e(TAG, " tv1 -------------- ACTION_UP ");
} else if (event.getAction() == MotionEvent.ACTION_DOWN) {
Log.e(TAG, " tv1 -------------- ACTION_DOWN ");
} else if (event.getAction() == MotionEvent.ACTION_CANCEL) {
Log.e(TAG, " tv1 -------------- ACTION_CANCEL ");
} else if (event.getAction() == MotionEvent.ACTION_MOVE) {
Log.e(TAG, " tv1 -------------- ACTION_MOVE ");
} else {
Log.e(TAG, " tv1 -------------- " + event.getAction());
}
return true;
}
});
findViewById(tv2).setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
Log.e(TAG, " tv2 -------------- ACTION_UP ");
} else if (event.getAction() == MotionEvent.ACTION_DOWN) {
Log.e(TAG, " tv2 -------------- ACTION_DOWN ");
} else if (event.getAction() == MotionEvent.ACTION_CANCEL) {
Log.e(TAG, " tv2 -------------- ACTION_CANCEL ");
} else if (event.getAction() == MotionEvent.ACTION_MOVE) {
Log.e(TAG, " tv2 -------------- ACTION_MOVE ");
} else {
Log.e(TAG, " tv2 -------------- " + event.getAction());
}
return true;
}
});
}
布局中只有2 TextView
操作步骤:
1, 1根手指按下tv1;
2, 2根手指按下tv2;
3, 放开所有手指.
4.3(API18) log
tv1 -------------- ACTION_DOWN
tv1 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv2 -------------- ACTION_DOWN
tv1 -------------- ACTION_MOVE
tv2 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv2 -------------- 261
tv1 -------------- ACTION_MOVE
tv2 -------------- ACTION_CANCEL
tv1 -------------- ACTION_CANCEL
5.0(>API18) log
tv1 -------------- ACTION_DOWN
tv1 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv2 -------------- ACTION_DOWN
tv1 -------------- ACTION_MOVE
tv2 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv2 -------------- 261
tv1 -------------- ACTION_MOVE
tv1 -------------- ACTION_MOVE
tv2 -------------- 6
tv1 -------------- ACTION_MOVE
tv2 -------------- ACTION_UP
tv1 -------------- ACTION_MOVE
tv1 -------------- ACTION_UP
在4.3(一加手机)上为什么在第2步后,tv1 tv2怎么都来了ACTION_CANCEL, 而不是ACTION_MOVE? 如何得到ACTION_MOVE?
求救各位,谢谢!