zoukankan      html  css  js  c++  java
  • viewpager 无网络的时候滑动异常

    不知道大家有没有遇到过这种情况,就是框架是viewpager+fragment的架构。然后呢,fragment里面是webview.一般情况下,当没有网的时候,webviwe会说什么找不到网页,然后很长的一个地址显示在webview上。你能够滑很长。一般没网的时候我们会找个东西盖在上面。如:
    这里写图片描述

    如果没网的话,你会发现滑动的时候,滑动不灵敏,因为webwiew在搞鬼。怎么办?

    1.重写canSrcoll方法,下面viewpager:

    public class MainViewPager extends ViewPager {
        public MainViewPager(Context context) {
            super(context);
        }
    
        public MainViewPager(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        @Override
        protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) {
            if (v instanceof ViewGroup) {
                final ViewGroup group = (ViewGroup) v;
                final int scrollX = v.getScrollX();
                final int scrollY = v.getScrollY();
                final int count = group.getChildCount();
                // Count backwards - let topmost views consume scroll distance first.
                for (int i = count - 1; i >= 0; i--) {
                    // TODO: Add versioned support here for transformed views.
                    // This will not work for transformed views in Honeycomb+
                    final View child = group.getChildAt(i);
                    if (/*child.getVisibility() != View.GONE && */x + scrollX >= child.getLeft() && x + scrollX < child.getRight() &&
                            y + scrollY >= child.getTop() && y + scrollY < child.getBottom() &&
                            canScroll(child, true, dx, x + scrollX - child.getLeft(),
                                    y + scrollY - child.getTop())) {
                        return true;
                    }
                }
            }
    //
            return checkV && ViewCompat.canScrollHorizontally(v, -dx);
    //        return  true;//不可滑动
    //        return false;就可以滑动;
        }
    }

    2.当没网的时候,你要把webview gone掉。当然有网的时候,你要显示出来。

  • 相关阅读:
    python -基础-强大的列表推导式
    python-基础-字符串拼接
    tkinter学习-- 控件一、Label、Button
    python -re模块
    Apache POI XWPF 爬坑指南之二特定位置插入表格、段落、图片
    mybatis报错:Invalid bound statement (not found):
    bootstrap中input输入框后面添加图标
    bootstrap悬浮显示内容
    layui中使用laydate
    与SQL相关解释表关联(left join ... on ... and ...)
  • 原文地址:https://www.cnblogs.com/caoxinyu/p/6647803.html
Copyright © 2011-2022 走看看