Android:当方向改变时,缩放动画不起作用

时间:2013-02-06 07:26:10

标签: android xml scale android-animation

在我的Android应用中,我有一个比例动画。

<set xmlns:android="http://schemas.android.com/apk/res/android"   android:interpolator="@android:anim/accelerate_interpolator"   android:fillEnabled="true"  android:fillAfter="true"  >
 <scale android:fromXScale="1.0" android:toXScale="0.0"   android:fromYScale="1.0"    android:toYScale="1.0"      android:duration="32000"   />
 </set>

它工作正常。它从左到右缩放视图。但我需要从右到左扩展。因此,当我修改fromXScale="-1.0"时,动画不会发生,视图会在没有动画的情况下立即缩放。 我的反向动画xml如下:

 <set xmlns:android="http://schemas.android.com/apk/res/android"   android:interpolator="@android:anim/accelerate_interpolator"   android:fillEnabled="true"  android:fillAfter="true"  >            
  <scale android:fromXScale="-1.0" android:toXScale="0.0"   android:fromYScale="1.0"    android:toYScale="1.0"      android:duration="32000"   /> 
 </set>

如何从反方向为视图设置动画?我的代码出了什么问题?

2 个答案:

答案 0 :(得分:1)

您还应该在动画中添加android:fillBefore="true"

在前向动画中,您的视图通常具有1的刻度,这意味着您无需在开始时设置它。但是在反向动画中,你从默认开始(即1)并动画到...... 1

答案 1 :(得分:1)

使用Pivot解决了这个问题。通过pivotX和pivotY控制动画方向是一种更好的做法。