【发布时间】:2019-02-26 16:33:08
【问题描述】:
我一直在尝试实现以下内容:
1) 将轮子设置在数字 5(或任何其他数字)上
2) 滚动滚轮约 2 秒
3) 旋转停止后(可以是从 0 到 9 的任意旋转次数)显示的值是第 1 步中设置的值
我目前的工作:
在 WheelView -> WheelScroller 中我添加了以下方法(并且还添加了对父视图的引用):
public void flingToY(int initialVelocity, final int finalYindex) {
scroller.forceFinished(true);
lastScrollY = 0;
final int maxY = 0x7FFFFFFF;
final int minY = -maxY;
scroller.fling(0, lastScrollY, 0, initialVelocity, 0, 0, minY, maxY);
setNextMessage(MESSAGE_SCROLL);// specific to the view to allow it to scroll
parentView.postDelayed(new Runnable() {
@Override
public void run() {
//scroller.extendDuration(1000);
scroller.setFinalY(finalYindex);
}
}, 1000);
}
最终结果:
调用setFinalY() 后,轮子停止转动,显示的数字始终为“0”
你可以看到我尝试了extendDuration(),它确实延长了旋转,但最终结果是一样的;纺车突然停止,轮子上显示数字“0”。
需要帮助:
如何让“WheelView”在数字 0 .. 9 中旋转一秒钟,然后减速到预定位置?
【问题讨论】:
标签: android