android 只修改ViewPager调用setCurrentItem时,滑屏的速度,其他正常


 public class FixedSpeedScroller extends Scroller{
	private int mDuration = 0;  
	  
    public FixedSpeedScroller(Context context) {  
        super(context);  
    }  
  
    public FixedSpeedScroller(Context context, android.view.animation.Interpolator interpolator) {  
        super(context,interpolator);  
    }  
  
    public FixedSpeedScroller(Context context, android.view.animation.Interpolator interpolator, boolean flywheel) {  
    	super(context, interpolator, flywheel);    
    }  
   
    @Override  
    public void startScroll(int startX, int startY, int dx, int dy, int duration) {  
    	
    	if(duration == 200)//调用setCurrentItem滑动的固定速度
          super.startScroll(startX, startY, dx, dy, mDuration);  
    	else //其他按照正常速度来
         super.startScroll(startX, startY, dx, dy, duration);	
    }  
  

	@Override  
    public void startScroll(int startX, int startY, int dx, int dy) {  
        super.startScroll(startX, startY, dx, dy, mDuration);  
    }  
}

应用

private void setViewPagerScrollSpeed(){  
        try {  
            Field mScroller = null;  
            mScroller = ViewPager.class.getDeclaredField("mScroller");  
            mScroller.setAccessible(true);   
            FixedSpeedScroller scroller = new FixedSpeedScroller( myviewpage.getContext( ) );  
            mScroller.set( myviewpage, scroller);              
        }catch(NoSuchFieldException e){  
              
        }catch (IllegalArgumentException e){  
              
        }catch (IllegalAccessException e){  
              
        }  
    }





你可能感兴趣的:(android 只修改ViewPager调用setCurrentItem时,滑屏的速度,其他正常)