How can I make number picker scroll/fling faster? Currently it takes so much effort from going 00 minute to 59 minute. I've tried some example from Slowing speed of Viewpager controller in android and applied opposite of it to number picker, but I don't see any difference.
try {
Field mScroller;
mScroller = NumberPicker.class.getDeclaredField("mFlingScroller");
mScroller.setAccessible(true);
FixedSpeedScroller scroller = new FixedSpeedScroller(getContext(),null,true);
// scroller.setFixedDuration(5000);
// scrollBy(0,1500);
Log.v("Scroller",""+mScroller); //getting the mFlingScroller field
mScroller.set(this, scroller);
} catch (NoSuchFieldException | IllegalArgumentException | IllegalAccessException e) {
e.printStackTrace();
}
public class FixedSpeedScroller extends Scroller {
private int mDuration = 10;
public FixedSpeedScroller(Context context) {
super(context);
}
public FixedSpeedScroller(Context context, Interpolator interpolator) {
super(context, interpolator);
}
public FixedSpeedScroller(Context context, Interpolator interpolator, boolean flywheel) {
super(context, interpolator, flywheel);
}
@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);
}
}
I decreased the mDuration to something lower than example(5000). But still having no hope. Some help would be greatly appreciated. Thanks in advance!!! :)