首页 > 其他 > 详细

改变ViewPager滑动速度

时间:2015-03-20 10:54:23      阅读:396      评论:0      收藏:0      [点我收藏+]

代码如下:

try {
Interpolator sInterpolator = new AccelerateInterpolator();
Field mScroller = ViewPager.class.getDeclaredField("mScroller");
mScroller.setAccessible(true);
FixedSpeedScroller scroller = new FixedSpeedScroller(
mViewPager.getContext(), sInterpolator);
mScroller.set(mViewPager, scroller);
} catch (NoSuchFieldException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


FixedSpeedScroller类的代码:

@SuppressLint("NewApi")
public class FixedSpeedScroller extends Scroller {


private int mDuration = 400;//滑动所用时间


public FixedSpeedScroller(Context context) {
super(context);
}


public FixedSpeedScroller(Context context, Interpolator interpolator) {
super(context, interpolator);
}


public FixedSpeedScroller(Context context, Interpolator interpolator,
boolean flywheel) {
super(context, interpolator, flywheel);
}


@Override
public void startScroll(int startX, int startY, int dx, int dy, int duration) {
// Ignore received duration, use fixed one instead
super.startScroll(startX, startY, dx, dy, mDuration);
}


@Override
public void startScroll(int startX, int startY, int dx, int dy) {
// Ignore received duration, use fixed one instead
super.startScroll(startX, startY, dx, dy, mDuration);
}


}

改变ViewPager滑动速度

原文:http://blog.csdn.net/android0120/article/details/44487899

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!