今天小编给大家分享一下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的滑动速度”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://www.xuebuyuan.com/3290446.html