Android: Поверните анимацию, верните ее в реальное состояние после окончания анимации?
Я собираюсь повернуть изображение в Моем приложении.
Все работает отлично с Вращением.
Но пока анимация вращения я закончится, Image wil вернется в прежнее положение. Я хочу сохранить этот образ в этом повернутом состоянии, а не возвращать его в реальное состояние.
Итак, как это сделать?
Чтобы повернуть изображение, я использую код ниже:
<?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);
Итак, помогите мне в этом.
Ответы
Ответ 1
Смотрите Как я могу оживить представление в Android и оставить его в новой позиции/размере?
Внутри тега <set
используйте
android:fillAfter="true"
android:fillEnabled="true"
В общем, анимация не изменяет фактические свойства View, она только оживляет ее. Если вы хотите изменить фактические свойства, используйте AnimationListener и слушайте onAnimationEnd и внесите изменения самостоятельно.
Ответ 2
Сначала получите экземпляр анимации, используя
Animation anim = AnimationUtils.loadAnimation(context, R.anim.animation);
"R.anim.animation" относится к любой вашей анимации.
добавьте прослушиватель анимации в эту анимацию, используя.
anim.setAnimationListener
Сделать вид видимым в методе onAnimationCompleted() AnimationListener.
Это должно работать.
Ответ 3
setFillAfter и setFillEnable - ответ, который вам нужен.