diff --git a/build.gradle b/build.gradle index 23b974a..6ef4d86 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:2.0.0-beta5' - classpath 'com.novoda:bintray-release:0.3.4' + classpath 'com.android.tools.build:gradle:3.0.1' + classpath 'com.novoda:bintray-release:0.8.0' } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 122a0dc..628771e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Mon Dec 28 10:00:20 PST 2015 +#Tue Jan 23 09:50:54 CET 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip diff --git a/library/src/main/java/link/fls/swipestack/SwipeHelper.java b/library/src/main/java/link/fls/swipestack/SwipeHelper.java index 43b7b72..cd39203 100644 --- a/library/src/main/java/link/fls/swipestack/SwipeHelper.java +++ b/library/src/main/java/link/fls/swipestack/SwipeHelper.java @@ -19,6 +19,7 @@ import android.animation.Animator; import android.view.MotionEvent; import android.view.View; +import android.view.ViewPropertyAnimator; import android.view.animation.OvershootInterpolator; import link.fls.swipestack.util.AnimationUtils; @@ -138,15 +139,16 @@ private void resetViewPosition() { private void swipeViewToLeft(int duration) { if (!mListenForTouchEvents) return; mListenForTouchEvents = false; - mObservedView.animate().cancel(); - mObservedView.animate() - .x(-mSwipeStack.getWidth() + mObservedView.getX()) + final ViewPropertyAnimator animator = mObservedView.animate(); + animator.cancel(); + animator.x(-mSwipeStack.getWidth() + mObservedView.getX()) .rotation(-mRotateDegrees) .alpha(0f) .setDuration(duration) .setListener(new AnimationUtils.AnimationEndListener() { @Override public void onAnimationEnd(Animator animation) { + animator.setListener(null); mSwipeStack.onViewSwipedToLeft(); } }); @@ -155,15 +157,16 @@ public void onAnimationEnd(Animator animation) { private void swipeViewToRight(int duration) { if (!mListenForTouchEvents) return; mListenForTouchEvents = false; - mObservedView.animate().cancel(); - mObservedView.animate() - .x(mSwipeStack.getWidth() + mObservedView.getX()) + final ViewPropertyAnimator animator = mObservedView.animate(); + animator.cancel(); + animator.x(mSwipeStack.getWidth() + mObservedView.getX()) .rotation(mRotateDegrees) .alpha(0f) .setDuration(duration) .setListener(new AnimationUtils.AnimationEndListener() { @Override public void onAnimationEnd(Animator animation) { + animator.setListener(null); mSwipeStack.onViewSwipedToRight(); } });