我正在创建一个可以在图片上绘制的应用程序。绘图是通过pictureView,带有位图的画布和onTouchListener实现的。 我想添加一个功能,当有两根手指短按时,它会撤消上一个动作。 我通过这样做实现了它:
if(event.getActionMasked() == MotionEvent.ACTION_POINTER_UP ){
//undo
}
我希望在有两根手指长按下时撤消所有绘图操作。 我试过这样的东西,但它只会检测一次。
if(event.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN ){
numberOfDown++;
if(numberOfDown>100){
//undo
}
}
我如何实现我的目标?
答案 0 :(得分:1)
我不确定主手指或非主手指的动作索引是否从零开始,因此您可能需要将这些0翻转为1。
if(event.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN && event.getActionIndex()==0){
mSecondFingerTimeDown = System.currentTimeMillis();
}
if(event.getActionMasked() == MotionEvent.ACTION_POINTER_UP && event.getActionIndex()==0 ){
if ((System.currentTimeMillis()-mSecondFingerDownTime) >= LONG_PRESS_TIME_MILLIS)
//long double-press action
else
//short double-press action
}