我知道这个主题有很多问题,但没有答案涵盖我想做的事情。
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
答案 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);