zoukankan      html  css  js  c++  java
  • 禁用ViewPager边界滑动效果(转)

    反射设置方法

     1 private EdgeEffectCompat leftEdge;
     2     private EdgeEffectCompat rightEdge;
     3     public void DisableLRScroll(){
     4         try {
     5             Field leftEdgeField = viewPager.getClass().getDeclaredField("mLeftEdge");
     6             Field rightEdgeField = viewPager.getClass().getDeclaredField("mRightEdge");
     7             if(leftEdgeField != null && rightEdgeField != null){
     8                 leftEdgeField.setAccessible(true);
     9                 rightEdgeField.setAccessible(true);
    10                 leftEdge = (EdgeEffectCompat) leftEdgeField.get(viewPager);
    11                 rightEdge = (EdgeEffectCompat) rightEdgeField.get(viewPager);
    12             }
    13         } catch (Exception e) {
    14             e.printStackTrace();
    15         }
    16     }

    在viewPager的监听事件的onPageScrolled方法中做处理

    if(leftEdge != null && rightEdge != null) {
                        leftEdge.finish();
                        rightEdge.finish();
                        leftEdge.setSize(0, 0);
                        rightEdge.setSize(0, 0);
                    }

    记得在onCreate方法中执行DisableLRScroll()方法

  • 相关阅读:
    绘制八卦阵
    绘制奥运五环
    绘制渐变的圆
    实验报告
    大学排名
    第一条爬虫
    自己的第一个网页
    科学计算与可视化
    类和正则表达(自动更正 代数运算)
    预测比赛
  • 原文地址:https://www.cnblogs.com/weizhxa/p/5829765.html
Copyright © 2011-2022 走看看