如何从右到左缩放一个按钮,android动画

时间:2011-10-29 12:06:32

标签: android animation

要从左到右比例应用按钮,我使用了以下代码。我的按钮位于布局右侧。我希望按钮应该从它的右X位置开始,并缩放到左X位置如何实现这个?

view.startAnimation(new ScaleAnimation(0.0f, 1.0f, 1.0f, 1.0f));

1 个答案:

答案 0 :(得分:17)

您需要将起点设置为中间右侧,您还需要设置动画的持续时间,如下所示:

ScaleAnimation anim = new ScaleAnimation(0.0f, 1.0f, 1.0f, 1.0f, Animation.RELATIVE_TO_SELF,1.0f, Animation.RELATIVE_TO_SELF, 0.5f);
anim.setDuration(700);
view.startAnimation(anim);

在您的情况下,Y起始位置并不重要。

如果你没有读到这个构造函数:

  

public Sc​​aleAnimation(float fromX,float toX,float fromY,float toY,int pivotXType,float pivotXValue,int pivotYType,float   pivotYValue)

     

自:API Level 1

     

从代码

构建ScaleAnimation时使用的构造方法      

参数:

     

fromX:要在动画开头应用的水平缩放系数

     

toX:在动画结束时应用的水平缩放系数

     

fromY:在动画开头应用的垂直缩放系数

     

toY:在动画结束时应用的垂直缩放系数

     

pivotXType:指定应如何解释pivotXValue。 Animation.ABSOLUTE,Animation.RELATIVE_TO_SELF之一,或   Animation.RELATIVE_TO_PARENT。

     

pivotXValue:对象被缩放的点的X坐标,指定为绝对数字,其中0为左   边缘。 (当对象改变大小时,此点保持固定。)这   如果 pivotXType 是ABSOLUTE,则值可以是绝对数,或者a   百分比(其中1.0是100%)否则。

     

pivotYType:指定应如何解释 pivotYValue 。 Animation.ABSOLUTE,Animation.RELATIVE_TO_SELF之一,或   Animation.RELATIVE_TO_PARENT。

     

pivotYValue:对象缩放的点的Y坐标,指定为绝对数字,其中0为顶部   边缘。 (当对象改变大小时,此点保持固定。)这   如果 pivotYType 是ABSOLUTE,则值可以是绝对数,或者a   百分比(其中1.0是100%)否则。