android - nineoldandroids - setDuration 不适用于 AnimatorSet

标签 android android-animation nineoldandroids

我有以下代码,它将图像分成两半并在不同方向为每个部分设置动画:

final AnimatorSet mSetAnim = new AnimatorSet();
final Animator topAnim = ObjectAnimator.ofFloat(topImage, "translationY", (bmp.getHeight() / 2) * -1);
final Animator bottomAnim = ObjectAnimator.ofFloat(bottomImage, "translationY", bmp.getHeight() / 2);
mSetAnim.setDuration(duration); 
mSetAnim.playTogether(topAnim, bottomAnim);
mSetAnim.start();

我正在使用 NineOldAndroids 以支持旧的 android 版本,但出于某种原因,无论我在“持续时间”中输入什么值,它似乎都没有任何影响。动画持续时间保持不变 - 或多或少半秒。

当我使用 android 的动画 api 时,我可以看到持续时间在变化。

知道如何解决这个问题吗?

最佳答案

使用 mSetAnim.getDuration(),尝试在 toast 中打印以查看运行时存在的值。
使用mSetAnim.setDuration(duration);在 playTogether() 之后,如 nineoldandroids.com 中所做的那样.

关于android - nineoldandroids - setDuration 不适用于 AnimatorSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27446028/

相关文章:

android - 将文本保留在 TextView 中,drawableLeft 居中

android - 如何获取flipper中显示图片的id?

android - 使用类似于另一个子项的约束将 View 添加到 constraintLayout

android - 2D游戏动画android

android - 如何使用 ObjectAnimator 基于拖动 Action 平滑地向上/向下设置 View 动画?

android - java.lang.NoClassDefFoundError : com. nineoldandroids.view.ViewHelper

适用于 AC-3 的安卓 MediaCodec

android - 如何在 Eclipse ant 构建中使用 M 预览在 Android 项目中包含 http 库

android - 使用动画动画化列表项