gpt4 book ai didi

java - AnimationDrawable无法清除帧

转载 作者:搜寻专家 更新时间:2023-11-01 09:10:56 25 4
gpt4 key购买 nike

我正在尝试向 AnimationDrawable 添加帧和持续时间,但我无法获得想要的结果。我可以添加框架,但后续调用不会清除旧框架。有没有办法重置 AnimationDrawable?

这是我的代码的摘录:

public void animate() {

if (a != null && a.isRunning()) {
a.stop();
}

//iv.setImageDrawable(null);
//iv.setBackgroundDrawable(null);
iv.setBackgroundResource(R.drawable.blank_animation);
a = (AnimationDrawable) iv.getBackground();

a.addFrame(res.getDrawable(R.drawable.blank), 1);
for (int i=0;i<Frames.size();i++) {

a.addFrame(res.getDrawable(Frames.get(i)), AnimationSpeed);

}
a.addFrame(res.getDrawable(R.drawable.blank), 1);

a.setOneShot(true);
a.start();

}

我已经尝试了以下但没有成功清除 ImageView 和/或 AnimationDrawable。

iv.setImageDrawable(null);
iv.setBackgroundDrawable(null);
a = new AnimationDrawable();
iv.clearAnimation();

我也尝试过清空 ImageView 并重新创建它,但没有重置框架。

如有任何帮助,我们将不胜感激。

最佳答案

这样试试

a = new AnimationDrawable();
a.addFrame(res.getDrawable(R.drawable.blank), 1);
for (int i=0;i<Frames.size();i++) {
a.addFrame(res.getDrawable(Frames.get(i)), AnimationSpeed);
}
a.addFrame(res.getDrawable(R.drawable.blank), 1);
iv.setBackgroundDrawable(a);

a.setOneShot(true);
a.start();

关于java - AnimationDrawable无法清除帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8403187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com