zoukankan      html  css  js  c++  java
  • ViewPager使用笔记

    1.ViewPager.setCurrentItem(position),即使已设置动画,但是没有动画效果

    原因:因为ViewPager滑动之前的时间间隔太短,可以通过反射,去修改ViewPager自动滑动时间,代码实现如下

     1 public class ViewPagerScroller extends Scroller {
     2 
     3     /**ViewPager滑动时间*/
     4     private int mScrollDuration = 0;
     5 
     6     public ViewPagerScroller(Context context, int scrollDuration){
     7         super(context);
     8         mScrollDuration = scrollDuration;
     9     }
    10 
    11     public static void setViewPagerScrollDuration(ViewPager viewPager, int scrollDuration){
    12         try {
    13             Field mScroller = ViewPager.class.getDeclaredField("mScroller");
    14             mScroller.setAccessible(true);
    15             ViewPagerScroller scroller = new ViewPagerScroller(viewPager.getContext( ), scrollDuration);
    16             mScroller.set(viewPager, scroller);
    17         }catch(Exception e){
    18             e.printStackTrace();
    19         }
    20     }
    21 
    22     @Override
    23     public void startScroll(int startX, int startY, int dx, int dy, int duration) {
    24         super.startScroll(startX, startY, dx, dy, mScrollDuration);
    25     }
    26     @Override
    27     public void startScroll(int startX, int startY, int dx, int dy) {
    28         super.startScroll(startX, startY, dx, dy, mScrollDuration);
    29     }
    30 }
    View Code

     调用

    ViewPagerScroller.setViewPagerScrollDuration(mViewPager, VIEW_PAGER_SCROLL_DURATION);
  • 相关阅读:
    JavaScript函数
    JavaScript数组知识点
    面向对象之继承及属性查找顺序
    面向对象二
    面向对象
    正则表达式补充
    垃圾回收机制、标记删除及分代回收
    hashlib、hmac、subprocess、configparser模块
    模块、起别名、from导入
    递归、匿名函数、内置函数
  • 原文地址:https://www.cnblogs.com/baron89/p/4650601.html
Copyright © 2011-2022 走看看