Viewpager 去掉两侧的光晕效果


方案1:

viewPager.setOverScrollMode(viewPager.OVER_SCROLL_NEVER);  

方案2:通过反射的办法,直接操作具体控件具体的控件

private void initViewPager() {
    try {
      Field leftEdgeField = viewpager.getClass().getDeclaredField("mLeftEdge");
      Field rightEdgeField = viewpager.getClass().getDeclaredField("mRightEdge");
      if (leftEdgeField != null && rightEdgeField != null) {
        leftEdgeField.setAccessible(true);
        rightEdgeField.setAccessible(true);
        leftEdge = (EdgeEffectCompat) leftEdgeField.get(viewpager);
        rightEdge = (EdgeEffectCompat) rightEdgeField.get(viewpager);
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}


public void onPageScrolled(int arg0, float arg1, int arg2) {
    if (leftEdge != null && rightEdge != null) {
      leftEdge.finish();
      rightEdge.finish();
      leftEdge.setSize(0, 0);
      rightEdge.setSize(0, 0);
    }
  }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM