温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android中怎么修改viewpage的滑动速度

发布时间:2021-06-26 17:22:51 来源:亿速云 阅读:159 作者:Leah 栏目:移动开发

Android中怎么修改viewpage的滑动速度,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

1、自定义Scroller

public class ViewPageFixedSpeedScroller extends Scroller { 
  private int mDuration = 300; 
  public ViewPageFixedSpeedScroller(Context context) { 
    super(context); 
    // TODO Auto-generated constructor stub 
  } 
  public ViewPageFixedSpeedScroller(Context context, Interpolator interpolator) { 
    super(context, interpolator); 
  } 
  @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); 
  } 
  public void setmDuration(int time) { 
    mDuration = time; 
  } 
  public int getmDuration() { 
    return mDuration; 
  } 
}
2、通过反射修改viewpage 的scoller<pre name="code" class="java">try { 
//通过反射找到当前class 文件里的mScroller的mScrooller对象 
//getDeclaredField是可以获取一个类的所有字段.  
//getField只能获取类的public 字段.  
  Field mField = ViewPager.class.getDeclaredField("mScroller");  mField.setAccessible(true);//设置了private属性的对象也能获取的 
  Scroller mScroller = new ViewPageFixedSpeedScroller(page.getContext(), new LinearInterpolator()); 
  mField.set(page, mScroller); 
} catch (Exception e) { 
  e.printStackTrace(); 
} 
</pre><br> 
<pre></pre> 
<pre name="code" class="java"></pre><br>

看完上述内容,你们掌握Android中怎么修改viewpage的滑动速度的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI