gpt4 book ai didi

android - AnimationDrawable帧时长问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:29:55 28 4
gpt4 key购买 nike

我需要逐帧创建动画,但我遇到了一些问题我有 30 张 png 图像组成我的动画,我用这段代码加载我的 AnimationDrawable:

        mCurrentAnimation = new AnimationDrawable();
mCurrentAnimation.setOneShot(true);
int resId;
for (int j = 1; j < 31; j++)
{
resId = getResources().getIdentifier("resName", "drawable", "com.mindcolorstest.main");
mCurrentAnimation.addFrame(getResources().getDrawable(resId), 1);
}

逻辑上“mCurrentAnimation.start()”开始在 mdpi 设备上,动画效果很好,但我在每一帧的持续时间上都有一些问题,在 hdpi 模拟器或设备上我有一些滞后,如果我减少帧的持续时间(在 mdpi 或 hdpi 设备上)动画不会更快,就像每一帧都存在一个最短持续时间。一些提示和技巧?不知道该怎么办Q_Q还是谢谢

最佳答案

我同意这一点,即使在 S4 上,我也对 xml 动画列表做或多或少相同的事情,我每帧的动画时间比我设置的要长得多。 (我已将持续时间设置为每帧 3 毫秒)。
我弄乱了每帧 16,16ms 作为 30 个周期和 85 帧的最小平均值。

这可能会或可能不会响应 DrawableContaineranimate() 中的行 scheduleSelf(mAnimationRunnable, now + 1000/60);。只是一个猜测,因为 1000/60 = 16,66 什么应该变成 16 作为 int/long cast..

但它也可能来自代码或硬件速度的其他一些限制。
我没有检查此行中的代码是否被调用并导致此问题,因为我无法以某种方式中断那里。
但是我认为现实中没有显示那么快所以它看起来很聪明..

关于android - AnimationDrawable帧时长问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7585680/

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