AlphaAnimation - 以XML格式设置的初始状态

时间:2015-12-14 13:33:09

标签: android animation alpha

我知道这个主题有很多问题,但没有答案涵盖我想做的事情。

Alpha状态应该从0.2开始 - 然后在完成一个动作后,它会动画为1。

  <LinearLayout
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:weightSum="0.8"
        android:gravity="center_vertical"
        android:layout_margin="2dp"
        **android:alpha="0.2"**
        android:id="@+id/stage_one">
...
</LinearLayout>



AlphaAnimation alphaAnim = new AlphaAnimation((float) 0.2, (float) 1);
            alphaAnim.setDuration(1000);
            alphaAnim.setFillAfter(true);
            alphaAnim.setFillEnabled(true);
            stage1.startAnimation(alphaAnim);

然而,这在0.2 / 0.2和1 / 0.2之间消失(它从0.04-0.2逐渐消失) - 淡入淡出显示为XML中设置的alpha值的百分比。

是的,如果我删除xml值,那么动画的工作范围是0.2 - 1,但是我需要将此视图初始化为0.2,然后在将来的某个点按下按钮时淡出为1。 - 是的,如果我在onCreate方法中初始化视图的alpha值,则会出现同样的问题。

提前致谢。

A

1 个答案:

答案 0 :(得分:0)

愚蠢地将alpha设置为1然后执行动画。

stage1.setAlpha(1.0F);
AlphaAnimation alphaAnim = new AlphaAnimation((float) 0.2, (float) 1);
            alphaAnim.setDuration(1000);
            alphaAnim.setFillAfter(true);
            alphaAnim.setFillEnabled(true);
            stage1.startAnimation(alphaAnim);