当我尝试动画自定义视图(在java代码中创建)时,没有效果,动画无法启动。这就是我这样做的方式:
final Animation animation = AnimationUtils.loadAnimation(this, R.anim.animation);
final CustomView background = new CustomView(this);
background.setBackgroundResource(R.drawable.bg);
background.startAnimation(animation);
CustomView扩展了ImageView。
此代码不会启动动画,我也尝试使用ImageView,但也无效。
动画仅在我从findViewById(id)获取View时才有效。
这是动画代码:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false"
>
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"
android:duration="1000"
/>
<alpha
android:fromAlpha="1.0"
android:toAlpha="1.0"
android:startOffset="1000"
android:duration="6000"
/>
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:startOffset="7000"
android:duration="1000"
/>
</set>
答案 0 :(得分:0)
问题解决了。我发现动画实际上正在执行,但真正的问题出在我的自定义View类中,我忘了在onAnimationStart和onAnimationEnd中调用super。