我想要一个View
最初是不可见的,当我按下一个按钮时,它会以淡入淡出的动画显示出来。我正在使用AlphaAnimation
来消除效果。问题是,如果我使视图不可见,则无法看到动画。
非常感谢,
的Gratzi
答案 0 :(得分:126)
假设您的res \ anim \文件夹中有一个名为ImageView
的{{1}}和一个动画文件imageView
:
your_fade_in_anim.xml
您的XML
ImageView imageView = (ImageView) findViewById(R.id.imageView);
Animation fadeInAnimation = AnimationUtils.loadAnimation(this, R.anim.your_fade_in_anim);
// Now Set your animation
imageView.startAnimation(fadeInAnimation);
用您的实际持续时间替换括号。
答案 1 :(得分:26)
为动画提供AnimationListener
,并在动画开始后立即显示视图。
http://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html
答案 2 :(得分:3)
而不是无限重复计数和隐藏/查看你的视图,我建议不要重复动画,最初从alpha通道设置为最大值开始。然后你可以使用:
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="[duration (in milliseconds)]"
android:repeatCount="0" />
</set>
你已经完成了。不需要听众,隐藏或显示。同样简单。