我有这个动画应该将应用的视图移动到视图中,同时褪色,将其移回视图下方,然后在褪色时返回视图。
问题是它似乎没有消失 - 应用视图的不透明度总是0.5
。
<?xml version="1.0" encoding="UTF-8" ?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromYDelta="0"
android:toYDelta="-200"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="1995"
android:startOffset="3000" />
<translate
android:fromYDelta="200"
android:toYDelta="0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="1995"
android:startOffset="8005" />
<alpha
android:duration="500"
android:fromAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:repeatMode="reverse"
android:startOffset="3000"
android:toAlpha="0.5" />
<alpha
android:duration="1995"
android:fromAlpha="0.5"
android:interpolator="@android:anim/accelerate_interpolator"
android:repeatMode="reverse"
android:startOffset="8005"
android:toAlpha="1.0" />
</set>
我尝试了很多东西,将它们嵌套在一起,删除插补器等......唯一有用的是使用这个SO问题中给出的例子:android two alpha animations这让我相信它是与翻译动画结合使用时运行alpha动画。
谢谢!
答案 0 :(得分:5)
这是一个例子:
AnimationSet set = new AnimationSet(true);
Animation trAnimation = new TranslateAnimation(0, 500, 0, 0);
trAnimation.setDuration(6000);
trAnimation.setRepeatMode(Animation.REVERSE); ---------> This will make the view translate in the reverse direction
set.addAnimation(trAnimation);
Animation anim = new AlphaAnimation(1.0f, 0.0f);
anim.setDuration(3000);
set.addAnimation(anim);
txtView.startAnimation(set); --------> replace this with your view
I hope this helps! You can change this and use the a layout based animation defining the alpha and translate animations under the set tag.
答案 1 :(得分:2)
你应该试试这个:::
<alpha
android:duration="200"
android:fromAlpha="1.0"
android:repeatCount="1"
android:repeatMode="reverse"
android:toAlpha="0.0" />
<translate
android:duration="200"
android:fromXDelta="0"
android:repeatCount="1"
android:repeatMode="reverse"
android:toXDelta="50" />
答案 2 :(得分:0)
你不需要使用两个tranlate / alpha动画来获得你想要的东西,只需使用自定义插值器
编辑:请参阅我昨天的答案Fade out animation works but opposite fade in animation does not