我有一个 ImageView 用于显示一些帧动画。这些图像的持续时间都设置为 100。
但是,有时需要隐藏 ImageView。因此动画停止,ImageView 设置为 GONE。
当需要再次显示 ImageView 时,它的可见性设置为 VISIBLE 并开始动画。
但是 - 现在动画真的很快;而不是 100 的持续时间,它看起来像 50。但是当我检查持续时间时它仍然显示 100 - 但它绝对不像它。
隐藏和显示 ImageView 的代码如下:
//hide the animation
final AnimationDrawable frameAnim = (AnimationDrawable) animImgView.getBackground();
if (frameAnim.isRunning() == true)
{
frameAnim.stop();
}
frameAnim.setVisible(false, false);
animImgView.setVisibility(View.GONE);
//show animation
animImgView.setVisibility(View.VISIBLE);
final AnimationDrawable frameAnim = (AnimationDrawable) animImgView.getBackground();
frameAnim.setVisible(true, true);
frameAnim.start();
可能是什么问题?