不敢相信我还没有找到有关此问题的已回答的 Stack Overflow 帖子...我正在制作一个计时器,您可以在其中从 NumberPicker 小部件中选择时间。问题是需要10-13卷才能到达底部我查看了文档,但没有找到任何内容String[] minsecvalues = new String[61];for(int i=0; i < minsecvalues.length; i++){ minsecvalues[i] = Integer.toString(i);}NumberPicker mSecondsPicker = (NumberPicker) v.findViewById(R.id.np_seconds_picker);mSecondsPicker.setMaxValue(60);mSecondsPicker.setMinValue(0);mSecondsPicker.setWrapSelectorWheel(true);mSecondsPicker.setDisplayedValues(minsecvalues);//supposed to change scroll speed but doesn't workmSecondsPicker.setOnLongPressUpdateInterval(8000);//This method looks promising but my app crashes when I run it//mSecondsPicker.scrollBy(0, 20);
3 回答
慕码人2483693
TA贡献1860条经验 获得超9个赞
我的ScrollPicker库在这里可能会有所帮助,但不幸的是它不能将“选择器轮”“包裹”,因此无法循环显示列表。
虽然您无法通过代码设置滚动速度,但您不必这样做,因为您可以在 1 次滑动中到达这 60 个项目的末尾。这就是为什么我认为它仍然可能适合您的原因。您可以通过滑动时的速度来控制滑动速度。
这是您必须做的:
1. 使用 ScrollPicker 而不是
NumberPicker 2. 使用 setItems(..) 在代码中设置您的集合。不需要 setMinValue、setMaxValue 或转换为字符串,只需设置您的 int 集合。
添加回答
举报
0/150
提交
取消