soc*_*qwe 15 animation android
有没有一种简单的方法来重复Android AnimatorSet
(无限)?我可以通过再次呼叫设置AnimationListener
并重启吗?AnimatorSet
start()
我AnimatorSet
包含两个按顺序播放的动画.因此,如果我将单个动画的重复模式设置为重复,那么第一个将在第二个运行时重复,对吗?
wkh*_*tch 28
设置它的子对象动画师的重复模式和计数;
objectAnimator.setRepeatCount(ObjectAnimator.INFINITE);
objectAnimator.setRepeatMode(ObjectAnimator.RESTART/REVERSE...);
Run Code Online (Sandbox Code Playgroud)
但是,由于还有另一个错误,这将无法停止或取消.
很明显,我并不喜欢你可以在Android中制作动画的各种方式,并让它们以某种方式让你失败.希望这有助于其他人.
dau*_*aus 17
前两个问题有答案
有没有一种简单的方法来重复Android AnimatorSet(无限)?我可以通过再次调用start()来设置AnimationListener并重新启动animatorSet吗?
就在这里:
mAnimationSet.addListener(new AnimatorListenerAdapter() {
private boolean mCanceled;
@Override
public void onAnimationStart(Animator animation) {
mCanceled = false;
}
@Override
public void onAnimationCancel(Animator animation) {
mCanceled = true;
}
@Override
public void onAnimationEnd(Animator animation) {
if (!mCanceled) {
animation.start();
}
}
});
mAnimationSet.start();
Run Code Online (Sandbox Code Playgroud)
第三个问题的答案是否定的.将重复第一个动画,并且在所有重复之后将启动后续动画.
在我的脑海中 - 动画框架是痛苦的根源,特别是如果你想支持 2.x。我通常在尝试做任何更复杂的事情时遇到问题,跟踪AnimationListener
某种“玩家”。我跟踪我播放的动画(例如int
等),然后onAnimationEnd
开始另一个应该按顺序播放的动画。这样我就可以轻松地“编写”我的序列,而不必担心损坏的框架。
归档时间: |
|
查看次数: |
17797 次 |
最近记录: |