如何检测外部拖动的视图触摸?
问题描述:
我想使用onTouch方法编码imageView点击反馈。我的代码用于在按下时缩放imageView(MotionEvet.ACTION_DOWN
),并在用户停止按下时返回到其正常尺寸(MotionEvet.ACTION_UP
)。但是我无法编码的是当用户将其手指拖出imageView时的动作。如何检测外部拖动的视图触摸?
我见过一个解决方案,告诉在switch语句的开头使用MotionEvent.ACTION_CANCEL
,但这不适用于我。
我的代码是下一个:
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_CANCEL:
clickOutTransformation(ico);
return true;
case MotionEvent.ACTION_UP:
clickOutTransformation(ico);
switch (i) {
case 1:
fondoApp.setBackgroundResource(R.drawable.back_blue_bubbles_lite);
i++;
break;
case 2:
fondoApp.setBackgroundResource(R.drawable.back_espectrum);
i++;
break;
case 3:
fondoApp.setBackgroundResource(R.drawable.back_black_and_violet);
i++;
break;
case 4:
fondoApp.setBackgroundResource(R.drawable.back_green);
i++;
break;
case 5:
fondoApp.setBackgroundResource(R.drawable.back_blur_blue_ed);
i = 1;
break;
default:
break;
}
return true;
case MotionEvent.ACTION_DOWN:
clickInTransformation(ico);
return true;
default:
break;
}
return false;
}
答
使用,如果情况:MotionEvent.ACTION_DOWN缩放和案例MotionEvent.ACTION_UP:按比例缩小到正常大小...
ACTION_DOWN火灾,当你触摸你的屏幕和ACTION_UP火,当你从你的手指脱下视线
这就是它的编程方式...你是什么意思? – JCoder 2014-10-16 16:42:48
尝试你的代码的情况下:MotionEvent.ACTION_MOVE – ashutiwari4 2014-10-17 05:10:33
这运行良好,但我想要的是检测出运动的视图和MotionEvent.ACTION_MOVE对任何手指运动作出反应,即使在视图内 – JCoder 2014-10-17 13:44:15