我有一个奇怪的问题 - 应该淡出我的控件(ImageButton)的动画不会立即启动。我正在使用fadeout动画来隐藏它,然后在myListener的末尾(onAnimationEnd)我将新资源作为图像放在按钮上。
我的应用代码中的某处:
Animation a = AnimationUtils.loadAnimation(this,R.anim.fadeout);
a.setAnimationListener(new myListener(location));
buttons[location].setAnimation(a);
a.startNow(); // regardless if its start() or startnNow()
// it will work in most of the cases but not 100% reliable
// I actually can see in debug Log when its late, happens after few more clicks
然后在myListener.onAnimationEnd(动画a):
buttons[location].setImageResource(R.drawable.standard_button);
似乎有一条规则,即每个第4或第5个动画都无法启动...
感谢您的帮助!
答案 0 :(得分:11)
添加
buttons[location].invalidate();
之后
a.startNow();
解决了我的问题。
答案 1 :(得分:3)
您也可以使用
buttons[location].startAnimation(a);