反射设置方法
private EdgeEffectCompat leftEdge;
private EdgeEffectCompat rightEdge;
public void DisableLRScroll(){
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();
}
}
在viewPager的监听事件的onPageScrolled方法中做处理
if(leftEdge != null && rightEdge != null) {
leftEdge.finish();
rightEdge.finish();
leftEdge.setSize(0, 0);
rightEdge.setSize(0, 0);
}
记得在onCreate方法中执行DisableLRScroll()方法