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);
    }
  }
原文地址:https://www.cnblogs.com/lipeil/p/4545679.html