构建此应用程序,我设法使用了一些动画 与View view.setAnimation()等一起使用它们。
这是我的代码:
// animation Properties
Animation fadeIn = new AlphaAnimation(0, 1);
fadeIn.setInterpolator(new DecelerateInterpolator()); // add this
fadeIn.setDuration(5000);
AnimationSet animation1 = new AnimationSet(false); // change to false
//animation.addAnimation(fadeIn);
animation1.addAnimation(fadeIn);
animation1.setRepeatCount(1);
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator()); // and this
//fadeOut.setStartOffset(fadeInDuration + timeBetween);
fadeOut.setDuration(5000);
AnimationSet animation = new AnimationSet(false); // change to false
//animation.addAnimation(fadeIn);
animation.addAnimation(fadeOut);
animation.setRepeatCount(1);
textViewTopBannerBizName.setAnimation(animation1);
textViewTopBannerBizCategory.setAnimation(animation1);
所以,我想要的是textViewTopBannerBizName
和textViewTopBannerBizCategory
将淡入屏幕,因为我使用了 animation1 。
然而,当我第一次启动应用程序时,它工作得很完美,但当我再次重新启动它时,它停止了工作。
这让我想知道......为什么......?
请帮忙, 谢谢你的时间。
答案 0 :(得分:1)
试试这个。(经过测试)
textViewTopBannerBizName.startAnimation(animation1);
您可以通过调用clearAnimation()
然后调用startAnimation或setAnimation来清除之前缓存的动画。
<强>被修改强>
setAnimation
设置要为此视图播放的下一个动画。但视图动画尚未开始。
startAnimation
如果您想立即播放动画,请使用startAnimation。此方法允许对开始时间和失效进行细粒度控制,但您必须确保
1)动画设置了开始时间,
2)当动画应该开始时,视图将无效
答案 1 :(得分:0)
设置动画后,如果不是活动视图,请不要使视图无效
imb6.setAnimation(MainActivity.blinkAnimation(mContext, true))
invalidate();
我希望这会有所帮助。