android ViewPager自动轮播时控制切换速度

今天遇到个需求,viewPager要求自动轮播,效果实现了,但是两个View之间切换的速度过快。以下代码可以自定义view切换的速度。
一、新建类
package com.utils;

import android.content.Context;
import android.view.animation.Interpolator;
import android.widget.Scroller;

/**
*
*FixedSpeedScroller
*@author tianshi
*@time 2016/11/11 16:58
*/

public class FixedSpeedScroller extends Scroller {
private int mDuration = 1500;

public FixedSpeedScroller(Context context) {    super(context);}public FixedSpeedScroller(Context context, Interpolator interpolator) {    super(context, interpolator);}@Overridepublic 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);}@Overridepublic void startScroll(int startX, int startY, int dx, int dy) {    // Ignore received duration, use fixed one instead    super.startScroll(startX, startY, dx, dy, mDuration);}public void setmDuration(int time) {    mDuration = time;}public int getmDuration() {    return mDuration;}

}


二、在初始化Viewpage位置加上以下代码:
try {
field = ViewPager.class.getDeclaredField(“mScroller”);
field.setAccessible(true);
FixedSpeedScroller scroller = new FixedSpeedScroller(vp01.getContext(), new AccelerateInterpolator());
field.set(vp01, scroller);
//切换速度
scroller.setmDuration(500);
} catch (Exception e) {
e.printStackTrace();
}


OK,大功告成!

更多相关文章

  1. Activity切换导致的onCreate重复执行[转]
  2. Android横竖屏切换正确实现方式
  3. android 视频和图片切换并进行自动轮播
  4. 一分钟帮你提升Android(安卓)studio 编译速度
  5. Android横屏开发的老梗---Fragment切换混乱重叠问题
  6. android viewPager滑动速度设置
  7. Android中使用双层ViewPager2+Fragment+TabLayout 实现顶部Tab和
  8. Android(安卓)studio文件编码格式怎么快速切换?
  9. 提高Android应用程序的速度四大原则

随机推荐

  1. android.widget.ListView
  2. Android(安卓)SDK Manager下载和更新失败
  3. android——api
  4. Android(安卓)Studio中常用设置与快捷键(
  5. Android(安卓)ListView 下拉刷新 上拉更
  6. android studio配置git
  7. Android屏幕、键盘背光Framework和Linux
  8. 详解React Native开源时间日期选择器组件
  9. Android系统的编译命令
  10. Android(安卓)4.2 JellyBean Graphic Com