zoukankan      html  css  js  c++  java
  • 修复在“Android 在ScrollView中嵌入ViewPage后ViewPage不能很好的工作的问题解决”这篇博客中MyScrollView出现滑动一会就不会上下滑动的问题

    在“Android 在ScrollView中嵌入ViewPage后ViewPage不能很好的工作的问题解决”,这篇博客中的大部分问题已经解决了。

    唯一遗憾的是,ViewPage随人能够工作了,但是MyScrollView有些时间却不能够正常的工作(滑动一会儿后,MyScrollView不能够上下滑动了)

    针对这一问题,下面我将给出一个完整的解决方案。请看下面这段代码:

    package com.fortrun.client.view;
    
    import android.content.Context;
    import android.util.AttributeSet;
    import android.view.GestureDetector;
    import android.view.GestureDetector.SimpleOnGestureListener;
    import android.view.MotionEvent;
    import android.view.View;
    import android.widget.ScrollView;
    
    public class MyScrollView extends ScrollView{
        
        
        private float xDistance, yDistance, lastX, lastY;
    
        public MyScrollView(Context context, AttributeSet attrs) {
            super(context, attrs);
    
        }
    
        @Override
        public boolean onInterceptTouchEvent(MotionEvent ev) {
            switch (ev.getAction()) {
            case MotionEvent.ACTION_DOWN:
                xDistance = yDistance = 0f;
                lastX = ev.getX();
                lastY = ev.getY();
                break;
            case MotionEvent.ACTION_MOVE:
                final float curX = ev.getX();
                final float curY = ev.getY();
                xDistance += Math.abs(curX - lastX);
                yDistance += Math.abs(curY - lastY);
                lastX = curX;
                lastY = curY;
                if(xDistance > yDistance)
                    return false;
        }
            return super.onInterceptTouchEvent(ev);
        }
    
    
    }

    到此结束,问题解决。

  • 相关阅读:
    对数值计算numpy的一些总结,感兴趣的朋友可以看看
    mysql基础语法(部分)
    python_内建结构
    07_go语言基础
    06_go语言基础
    05_go语言基础常量
    04_go语言基础
    03_go语言基础
    02_go语言基础
    01_go语言基础
  • 原文地址:https://www.cnblogs.com/tony-yang-flutter/p/3344264.html
Copyright © 2011-2022 走看看