我意识到objectanimator对象的暂停和恢复方法仅适用于API:19.但是,既然我,也没有一半的
Android用户都有这个API,有没有办法让你的动画暂停,然后从同一状态恢复而不是从头开始?任何帮助将不胜感激.
解决方法
在我的项目中,我必须进行旋转动画(这将是暂停而不是从相同/结束位置恢复),我通过获取动画师的当前时间(当动画结束/当我点击暂停时)来解决它而不是,在启动动画师后,我正在设置“setCurrentPlayTime(带有结束时间)”.为了获得当前时间,我正在使用getCurrentPlayTime();并设置我正在使用ObjectAnimator类的setCurrentPlayTime()的时间.
参考文献:
http://developer.android.com/reference/android/animation/ValueAnimator.html#setCurrentPlayTime(long)
http://developer.android.com/reference/android/animation/ValueAnimator.html#getCurrentPlayTime()
private ObjectAnimator mObjectAnimator; private long mAnimationTime; private void stopAnimation() { if(mObjectAnimator != null) { mAnimationTime = mObjectAnimator.getCurrentPlayTime(); mObjectAnimator.cancel(); } } private void playAnimation() { if (mObjectAnimator != null) { mObjectAnimator.start(); mObjectAnimator.setCurrentPlayTime(mAnimationTime); } }