为什么已经在视图中设置Alpha动画时Alpha动画不起作用

时间:2018-07-25 03:26:37

标签: android android-animation android-xml

我发现了一个奇怪的情况。以下animation.xml无效。 ImageView始终不可见。

activity.xml

...
<ImageView
      android:layout_width="324px"
      android:layout_height="90px"
      android:alpha="0"
      android:src="@drawable/img"
      android:id="@+id/img"/>
...

custom_anim.xml (从可见到可见)

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="3000"
    android:fromAlpha="0.0"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:toAlpha="1.0"/>

MainActivity.java

Animation anim = AnimationUtils.loadAnimation(getContext(), R.anim.custom_anim);
...
...
((ImageView)getActivity().findViewById(R.id.img)).startAnimation(anim);

但是,如果删除android:alpha上的行activity.xml,则动画工作。当然,ImageView在动画工作之前不是不可见的,但至少可以工作。请让我知道为什么会发生这种情况,以及如何制作android:alpha

行中的动画

1 个答案:

答案 0 :(得分:1)

Try to using below code

((ImageView)getActivity().findViewById(R.id.img)).animate().alpha(1f).setDuration(3000).start();

Hope this helps