@Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); animationInProgress = false; // tell the caller that the animation is over if (animationEndListener != null) { animationEndListener.onAnimationComplete(animation); } }
@Override public void computeScroll() { super.computeScroll(); if (mScroller.computeScrollOffset()) { scrollTo(mScroller.getCurrX(), 0); if (DEBUG) LogHelper.LOGD(TAG, "mScroller.getCurrX()=" + mScroller.getCurrX()); postInvalidate(); } else if (mStartAnimation && mScroller.isFinished()) { // 结束动画 if (mFinishListener != null) { mFinishListener.finishAnimation(isLeft); } if (DEBUG) LogHelper.LOGD(TAG, "mStartAnimation && mScroller.isFinished()=" + mScroller.getCurrX()); mStartAnimation = false; } }