ViewPager切换滑动速度修改
来源:互联网 发布:java并发编程解决方案 编辑:程序博客网 时间:2024/05/24 04:42
ViewPager的setCurrentItem 滑动速度是写死地
下面的方法可以修改,在此以做记录
01
public
class
FixedSpeedScroller
extends
Scroller {
02
private
int
mDuration =
1500
;
03
04
public
FixedSpeedScroller(Context context) {
05
super
(context);
06
}
07
08
public
FixedSpeedScroller(Context context, Interpolator interpolator) {
09
super
(context, interpolator);
10
}
11
12
@Override
13
public
void
startScroll(
int
startX,
int
startY,
int
dx,
int
dy,
int
duration) {
14
// Ignore received duration, use fixed one instead
15
super
.startScroll(startX, startY, dx, dy, mDuration);
16
}
17
18
@Override
19
public
void
startScroll(
int
startX,
int
startY,
int
dx,
int
dy) {
20
// Ignore received duration, use fixed one instead
21
super
.startScroll(startX, startY, dx, dy, mDuration);
22
}
23
24
public
void
setmDuration(
int
time) {
25
mDuration = time;
26
}
27
28
public
int
getmDuration() {
29
return
mDuration;
30
}
31
}
使用方法:
01
try
{
02
Field field = ViewPager.
class
.getDeclaredField(
"mScroller"
);
03
field.setAccessible(
true
);
04
FixedSpeedScroller scroller =
new
FixedSpeedScroller(mViewPager.getContext(),
05
new
AccelerateInterpolator());
06
field.set(mViewPager, scroller);
07
scroller.setmDuration(
2000
);
08
}
catch
(Exception e) {
09
LogUtils.e(TAG,
""
, e);
10
}
注意点:
PagerAdapter 的 destroyItem 每次会删除上一个页面,导致,如果做自动切换页面时会看不到动画 .
解决办法:
destoryItem中不做删除view,instantiateItem中对view是否有parent做为判断条件,这种情况适用于,少量的固定的子View,比如一个Banner,banner中做自动循环播放
0 0
- ViewPager切换滑动速度修改
- ViewPager切换滑动速度修改
- ViewPager切换滑动速度修改
- ViewPager切换滑动速度修改
- ViewPager切换滑动速度修改
- ViewPager切换滑动速度修改
- Viewpager切换滑动速度的修改
- ViewPager切换滑动速度
- ViewPager切换滑动速度
- 使用反射机制修改viewPager切换滑动速度
- 设置ViewPager滑动切换速度
- Android ViewPager 修改滑动速度
- android 修改viewpager切换速度
- ViewPager切换动画速度修改
- 修改ViewPager调用setCurrentItem时,滑屏的速度 ,解决滑动之间切换动画难看
- android中修改Viewpager的滑动速度
- 改变ViewPager滑动速度
- 改变viewpager滑动速度
- AOP、Spring的AOP
- 判断范围重叠的技巧讨论
- quartz GUI
- Grep命令详解
- jdk环境变量配置及配置原因
- ViewPager切换滑动速度修改
- 位运算符之异或的化腐朽为神奇
- connect by rownum及connect by level的内部执行原理及过程
- 软工文档——可行性研究报告
- UITableView 数据展示 cell
- 如何判断Android手机当前是否联网
- 顺丰嘿客:看上去很美的O2O乌托邦
- ORACLE 内置函数之 GREATEST 和 LEAST(求多列的最大值,最小值)
- C++基础学习教程(三)