2017-08-18 37 views
0

我试图让一个alpha动画这样的:android-多个字母集不能正常工作

<alpha 
    android:duration="300" 
    android:fromAlpha="0.0" 
    android:toAlpha="0.9"/> 
<alpha 
    android:duration="300" 
    android:fromAlpha="0.9" 
    android:startOffset="300" 
    android:toAlpha="0.6" /> 
<alpha 
    android:duration="300" 
    android:fromAlpha="0.6" 
    android:startOffset="600" 
    android:toAlpha="0.9" /> 
<alpha 
    android:duration="300" 
    android:fromAlpha="0.9" 
    android:startOffset="900" 
    android:toAlpha="1" 
    android:fillAfter="true"/> 

但我的ImageView的是透明的,即使我在年底成立toAlpha = 1。 是因为我只能在xml中设置一次?

回答

0

这为我工作:

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fillEnabled="true" 
    android:fillAfter="true"> 

    <alpha 
    android:duration="300" 
    android:fromAlpha="0.0" 
    android:toAlpha="0.9" /> 
    <alpha 
    android:duration="300" 
    android:fromAlpha="0.9" 
    android:startOffset="300" 
    android:toAlpha="0.6" /> 
    <alpha 
    android:duration="300" 
    android:fromAlpha="0.6" 
    android:startOffset="600" 
    android:toAlpha="0.9" /> 
    <alpha 
    android:duration="300" 
    android:fromAlpha="0.9" 
    android:startOffset="900" 
    android:toAlpha="2.0" /> 
</set> 
+0

它的工作! 为什么可以设置2.0? 我检查Android API,并说视图的alpha属性为0(完全透明)和1(完全不透明)之间的值。 –

0

试试这个

Animation animation = new AlphaAnimation(1,0f, 0.0f); 
animation.setDuration(1000); 
<id>.startAnimation(animation); 
+0

感谢您的回答。 我尝试: '动画animationFont = AnimationUtils.loadAnimation(此,R.anim.anim_font);'' ImageView.startAnimation(animationFont);' 但我想要的结果看起来像0f-> 0.9f-> 0.6 f-> 0.9f-> 1 是否可以在一个xml中使用? –