android窗口速度条,android 改变ViewPager切换页面时的速度
聲明:引自http://zhidao.baidu.com/link?url=9YCi4uGUki-xgV6d8_ZN5N1Jq9-eRw4efaiwvC6_aehw62IoskmrrS1ew1Cm11UmTO4UNMoaZEN6DI1HUedTLJA8Kt1-v0lWMCW_Jnd_wHy ? ? ??點擊打開鏈接
原生的ViewPager頁面切換速度較快,但是又沒有方法設置切換速度,所以只能自定義一個滾動器,利用反射改變切換速度,代碼如下:
import java.lang.reflect.Field;
import android.content.Context;
import android.support.v4.view.ViewPager;
import android.view.animation.Interpolator;
import android.widget.Scroller;
/**
* ViewPager 滾動速度設置
*
* @author lyy
*
*/
public class ViewPagerScroller extends Scroller {
private int mScrollDuration = 2000; // 滑動速度
/**
* 設置速度速度
*
* @param duration
*/
public void setScrollDuration(int duration) {
this.mScrollDuration = duration;
}
public ViewPagerScroller(Context context) {
super(context);
}
public ViewPagerScroller(Context context, Interpolator interpolator) {
super(context, interpolator);
}
public ViewPagerScroller(Context context, Interpolator interpolator,
boolean flywheel) {
super(context, interpolator, flywheel);
}
@Override
public void startScroll(int startX, int startY, int dx, int dy, int duration) {
super.startScroll(startX, startY, dx, dy, mScrollDuration);
}
@Override
public void startScroll(int startX, int startY, int dx, int dy) {
super.startScroll(startX, startY, dx, dy, mScrollDuration);
}
public void initViewPagerScroll(ViewPager viewPager) {
try {
Field mScroller = ViewPager.class.getDeclaredField("mScroller");
mScroller.setAccessible(true);
mScroller.set(viewPager, this);
} catch (Exception e) {
e.printStackTrace();
}
}
}
使用:
ViewPagerScroller pagerScroller = new ViewPagerScroller(getActivity());
pagerScroller.setScrollDuration(1000);//設置時間,時間越長,速度越慢 pagerScroller.initViewPagerScroll(mViewPager);
總結
以上是生活随笔為你收集整理的android窗口速度条,android 改变ViewPager切换页面时的速度的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 乌鲁木齐华凌古树小镇是哪个开发商?
- 下一篇: 拉萨天知世界城是哪个开发商?