欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 修改viewpage滑动速度的实现代码

程序员文章站 2023-12-16 21:52:58
1、自定义scroller public class viewpagefixedspeedscroller extends scroller { priv...

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滑动速度的实现代码,希望对大家有所帮助

上一篇:

下一篇: