По сути, я хочу сделать анимацию карты, которая поворачивается. У меня есть три ImageButton, и мне нужна анимация, которая заставляет их переворачиваться, когда я нажимаю их, а затем через одну или две секунды заставляет нажатой одну исчезнуть.
Эй, вы можете сделать эту анимацию, используя XML
Просто следуйте этим шагам
1) Создайте папку anim в вашем каталоге res
2) Добавьте файл ресурсов для вашей анимации, например, flip_animation.xml
3) Добавьте этот код в файл анимации
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:fromXScale="1"
android:toXScale="-1"
android:fromYScale="1"
android:toYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:duration="500"/>
<scale
android:fromXScale="-1"
android:toXScale="1"
android:fromYScale="1"
android:toYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="500"
android:duration="1000"/>
И тогда вы можете назвать это в разделе программирования на любом представлении
В Kotlin вы можете сделать
val animationUtils = AnimationUtils.loadAnimation(this, R.anim.flip_animation)
buttonAnimation.startAnimation(animationUtils)
В Java вы можете сделать
AnimationUtils animationUtils = AnimationUtils.loadAnimation(this,R.flip_animation);
Button buttonAnimation = findViewById(R.id.buttonAnimation);
buttonAnimation.startAnimation(animationUtils)
Вот как вы можете перевернуть изображение по горизонтали, если вы хотите вертикальное, вы можете попробовать это тоже.
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:fromXScale="1"
android:toXScale="1"
android:fromYScale="1"
android:toYScale="-1"
android:pivotX="50%"
android:pivotY="50%"
android:duration="500"/>
<scale
android:fromXScale="1"
android:toXScale="1"
android:fromYScale="-1"
android:toYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="500"
android:duration="1000"/>
** И просто, если вы хотите немного весело перевернуть **
Вы можете попробовать это
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:fromXScale="1"
android:toXScale="-1"
android:fromYScale="-1"
android:toYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:duration="500"/>
<scale
android:fromXScale="-1"
android:toXScale="1"
android:fromYScale="1"
android:toYScale="-1"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="500"
android:duration="1000"/>