Horis 3 سال پیش
والد
کامیت
42aad757a6
1فایلهای تغییر یافته به همراه11 افزوده شده و 3 حذف شده
  1. 11 3
      app/src/main/java/io/legado/app/ui/book/read/page/delegate/ScrollPageDelegate.kt

+ 11 - 3
app/src/main/java/io/legado/app/ui/book/read/page/delegate/ScrollPageDelegate.kt

@@ -34,10 +34,14 @@ class ScrollPageDelegate(readView: ReadView) : PageDelegate(readView) {
 
     override fun onTouch(event: MotionEvent) {
         //在多点触控时,事件不走ACTION_DOWN分支而产生的特殊事件处理
-        if (event.actionMasked == MotionEvent.ACTION_POINTER_DOWN){
+        if (event.actionMasked == MotionEvent.ACTION_POINTER_DOWN) {
             //当多个手指同时按下的情况,将最后一个按下的手指的坐标设置为起始坐标,所以只有最后一个手指的滑动事件被处理
-            readView.setStartPoint(event.getX(event.pointerCount - 1), event.getY(event.pointerCount - 1), false)
-        } else if(event.actionMasked == MotionEvent.ACTION_POINTER_UP){
+            readView.setStartPoint(
+                event.getX(event.pointerCount - 1),
+                event.getY(event.pointerCount - 1),
+                false
+            )
+        } else if (event.actionMasked == MotionEvent.ACTION_POINTER_UP) {
             //当多个手指同时按下的情况,当抬起一个手指时,起始坐标恢复为第一次按下的手指的坐标
             readView.setStartPoint(event.x, event.y, false)
             return
@@ -47,9 +51,11 @@ class ScrollPageDelegate(readView: ReadView) : PageDelegate(readView) {
                 abortAnim()
                 mVelocity.clear()
             }
+
             MotionEvent.ACTION_MOVE -> {
                 onScroll(event)
             }
+
             MotionEvent.ACTION_CANCEL, MotionEvent.ACTION_UP -> {
                 onAnimStart(readView.defaultAnimationSpeed)
             }
@@ -102,6 +108,7 @@ class ScrollPageDelegate(readView: ReadView) : PageDelegate(readView) {
 
     override fun nextPageByAnim(animationSpeed: Int) {
         if (readView.isAbortAnim) {
+            readView.isAbortAnim = false
             return
         }
         if (noAnim) {
@@ -114,6 +121,7 @@ class ScrollPageDelegate(readView: ReadView) : PageDelegate(readView) {
 
     override fun prevPageByAnim(animationSpeed: Int) {
         if (readView.isAbortAnim) {
+            readView.isAbortAnim = false
             return
         }
         if (noAnim) {