【发布时间】:2023-04-06 05:12:01
【问题描述】:
我在更高密度的 Android 设备上遇到了 Fragment setCustomAnimations 问题。
我正在制作翻牌动画。 在 mdpi 和 hpid 设备上,动画非常流畅。 但是在 xhdpi、xxhdi 和 xxxhdpi 设备上,动画可以正常工作,但看起来会跳过几帧。
我正在使用此代码进行片段转换。
这是动画
<!-- Before rotating, immediately set the alpha to 0. -->
<objectAnimator
android:duration="0"
android:propertyName="alpha"
android:valueFrom="1.0"
android:valueTo="0.0" />
<!-- Rotate. -->
<objectAnimator
android:duration="500"
android:interpolator="@android:interpolator/accelerate_decelerate"
android:propertyName="rotationY"
android:valueFrom="180"
android:valueTo="0" />
<!-- Half-way through the rotation (see startOffset), set the alpha to 1. -->
<objectAnimator
android:duration="1"
android:propertyName="alpha"
android:startOffset="250"
android:valueFrom="0.0"
android:valueTo="1.0" />
<!-- Rescale in -->
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="250"
android:propertyName="scaleX"
android:startOffset="250"
android:valueFrom="0.60"
android:valueTo="1.0" />
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="250"
android:propertyName="scaleY"
android:startOffset="250"
android:valueFrom="0.60"
android:valueTo="1.0" />
这是出动画
<!-- Rotate. -->
<objectAnimator
android:duration="500"
android:interpolator="@android:interpolator/accelerate_decelerate"
android:propertyName="rotationY"
android:valueFrom="0"
android:valueTo="-180" />
<!-- Half-way through the rotation (see startOffset), set the alpha to 0. -->
<objectAnimator
android:duration="1"
android:propertyName="alpha"
android:startOffset="250"
android:valueFrom="1.0"
android:valueTo="0.0" />
<!-- Rescale out -->
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="250"
android:propertyName="scaleX"
android:valueFrom="1.0"
android:valueTo="0.60" />
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="250"
android:propertyName="scaleY"
android:valueFrom="1.0"
android:valueTo="0.60" />
即使我去掉了缩放动画,它在 mdpi 和 hdpi 设备上仍然看起来更流畅。
【问题讨论】:
标签: android animation android-fragments