我要在我的应用程序中旋转图像。旋转时一切正常。但是当我旋转动画完成时,图像将返回到其先前的位置。我想要的是将该图像保持到旋转状态,而不是将其恢复到真实状态。
那么如何使之成为可能呢?要旋转图像,我使用以下代码:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="30"
android:duration="2000">
</rotate>
并将其应用于ImgeView,例如:
myImageView.startAnimation(rotateRight);
所以,请帮助我解决这个问题。
请参阅如何在 Android 中为视图添加动画效果并使其保持在新的位置/大小?
在 <set
标记内,使用
android:fillAfter="true"
android:fillEnabled="true"
通常,动画不会更改视图的实际属性,它只会对其进行动画处理。如果要更改实际属性,请使用 AnimationListener 并侦听 onAnimationEnd 并自行进行更改。
首先使用
Animation anim = AnimationUtils.loadAnimation(context, R.anim.animation);
"R.anim.animation"是指您的动画是什么。
使用将动画侦听器放在此动画上。
anim.setAnimationListener
使视图在 AnimationListener 的 onAnimationCompleted() 方法中可见。
这应该有效。
setFillAfter 和 setFillEnable 是你需要的答案。