@Override public void computeScroll() { boolean invalidate = mDragHelper.continueSettling(true); if (!mTouchDown && mScroller.computeScrollOffset()) { if (!invalidate) { offsetHeaderBy(mScroller.getCurrY() - getHeaderTop()); } invalidate = true; } updateViewOffset(); if (invalidate) { ViewCompat.postInvalidateOnAnimation(this); } }