温馨提示×

温馨提示×

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

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

Android中如何修改viewpage的滑动速度

发布时间:2022-04-15 15:56:43 来源:亿速云 阅读:269 作者:iii 栏目:编程语言

今天小编给大家分享一下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