想要修改viewpager自动滑动的速度,使viewpager能平缓滑动到下一页上,则需要使用下面这段代码即可:
try { Class aClass = ViewPager.class; Field sInterpolator = aClass.getDeclaredField("sInterpolator"); sInterpolator.setAccessible(true); Scroller scroller = new Scroller(mActivity, (Interpolator) sInterpolator.get(viewPager)) { public void startScroll(int startX, int startY, int dx, int dy, int duration) { //最后一个参数即viewpager自动滑动的时间 super.startScroll(startX, startY, dx, dy, 1000); } }; Field mScroller = aClass.getDeclaredField("mScroller"); mScroller.setAccessible(true); mScroller.set(viewPager, scroller); } catch (Exception e) { e.printStackTrace(); }