diff --git a/circlerefresh/src/main/java/com/tuesda/walker/circlerefresh/AnimationView.java b/circlerefresh/src/main/java/com/tuesda/walker/circlerefresh/AnimationView.java index 364834e..16b1892 100644 --- a/circlerefresh/src/main/java/com/tuesda/walker/circlerefresh/AnimationView.java +++ b/circlerefresh/src/main/java/com/tuesda/walker/circlerefresh/AnimationView.java @@ -296,6 +296,8 @@ private void drawOutCir(Canvas canvas) { private boolean mIsStart = true; private boolean mIsRefreshing = true; + private boolean isQuickStop = false; + private void drawRefreshing(Canvas canvas) { canvas.drawRect(0, 0, mWidth, mHeight, mBackPaint); int innerY = PULL_HEIGHT - PULL_DELTA / 2 - mRadius * 2; @@ -322,11 +324,17 @@ private void drawRefreshing(Canvas canvas) { } + if (isQuickStop){ + mIsRefreshing = false; + isQuickStop = false; + } } // stop refreshing public void setRefreshing(boolean isFresh) { - mIsRefreshing = isFresh; + + mIsRefreshing = isFresh; + isQuickStop = true; } private void drawDone(Canvas canvas) {