我想用手指在屏幕和手指上移动相同的量来旋转ImageView
。
我正在使用
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY)
的 GestureDetector.SimpleOnGestureListener
。
我正在使用毕达哥拉斯定理检测距离量。
float rotationAmount = (float) Math.sqrt(distanceX * distanceX + distanceY * distanceY);
然后将视图旋转此数量,如
imageView.setRotation(imageView.getRotation() + rotationAmount);
这几乎可以正常工作,但顺时针和逆时针手势顺时针旋转视图。
答案 0 :(得分:1)
如果您想顺时针/逆时针旋转,请根据手势使用imageView.setRotation(imageView.getRotation() + rotationAmount);
或imageView.setRotation(imageView.getRotation() - rotationAmount);