0
我想延迟一段时间来开始动画。所以,当动画不会重复时,我们可以很容易地使用startOffset
属性。事情是我有一个无限重复的动画。但我必须延迟启动它,所以当我使用startOffset
时,动画总是以延迟而重复,这不是我想要的。此外,我不想使用Handler
来创建延迟。仅为开始设置重复动画的起始偏移
编辑:
我从来没有使用ObjectAnimator。我的代码如下所示,但它没有动画效果。我的错误是什么?
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(view, "translationX", 1000, -1000);
objectAnimator.setDuration(ANIMATION_DURATION);
objectAnimator.setRepeatMode(ValueAnimator.RESTART);
objectAnimator.setRepeatCount(ValueAnimator.INFINITE);
objectAnimator.setStartDelay((5 - i) * INTERVAL);
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.play(objectAnimator);
animatorSet.start();
'我也不想使用Handler来创建延迟' - 为什么? – azizbekian
因为动画将被分配到许多视图和任何地方的任何地方,我必须删除所有动画。所以,如果我使用处理程序,那么我必须删除每个视图的回调。 –
然后使用带有偏移量的AnimatorSet播放正常的重复动画 - 我认为这应该起作用 – pskink