我正在使用以下缩放动画来为ImageView
添加动画效果:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<scale
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXScale="1.0"
android:toXScale="2.0"
android:fromYScale="1.0"
android:toYScale="2.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="1000" />
<scale
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXScale="2.0"
android:toXScale="0.0"
android:fromYScale="2.0"
android:toYScale="0.0"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="1000"
android:duration="1000" />
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:interpolator="@android:anim/linear_interpolator"
android:toDegrees="360" android:pivotX="50%" android:pivotY="50%"
android:repeatCount="3"
android:duration="800" android:startOffset="0" />
</set>
但问题是,在第一个动画开始时,ImageView
已经被布局缩放了。这导致当第一个动画将比例设置为1.0时,大小出现明显跳跃。
有没有办法告诉动画应该从布局中视图的实际大小开始?我还尝试使用百分比,但效果相同。