我需要在每次点击后将图像旋转一定程度。我使用这段代码:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true"
>
<rotate
android:fromDegrees="0"
android:toDegrees="-45"
android:duration="500"
android:toYScale="0.0"
android:pivotX="50%"
android:pivotY="50%"/>
</set>
还试过这个:
ObjectAnimator imageViewObjectAnimator = ObjectAnimator.ofFloat(img,
"rotation", 0f, 45f);
imageViewObjectAnimator.setDuration(1000);
imageViewObjectAnimator.start();
但每次动画从其初始位置开始,忽略通过prewiosly动画获得的位置。那么, - 每次点击后,如何基本保持图像在一个方向上旋转45度
答案 0 :(得分:0)
您是否尝试使用矩阵来旋转ImageView
?这是我从我的旧应用程序中提取的一些示例代码:
Matrix matrix = new Matrix();
imageView.setScaleType(ImageView.ScaleType.MATRIX);
matrix.postRotate((float) angle, pivotX, pivotY);
imageView.setImageMatrix(matrix);
只需向onTouchListener
添加ImageView
,定义其外部的前2行和侦听器中的最后2行。然后每按一次,它将按轴数旋转。