我正在寻找类似日期选择器对话框的各个部分.一个视图,允许您输入可以限制的整数(仅限整数)(例如,在1到10之间),您可以在其中使用键盘或视图中的箭头.它存在吗?
这是一个对话框.一个现成的对话框来请求一个整数也会有所帮助.
该NumberPicker
部件可能是你想要的东西.不幸的是,它位于com.android.internal.Widget.NumberPicker
我们无法通过正常手段达到的地方.
有两种方法可以使用它:
从android源代码复制代码
使用反射来访问窗口小部件
这是在布局中使用它的xml:
这是设置NumberPicker设置的反射(我没有测试过这个):
Object o = findViewById(R.id.picker); Class c = o.getClass(); try { Method m = c.getMethod("setRange", int.class, int.class); m.invoke(o, 0, 9); } catch (Exception e) { Log.e("", e.getMessage()); }
由于它是一个内部窗口小部件而不在SDK中,因此如果使用反射,将来可能会破坏兼容性.从源头推出自己的产品是最安全的.
此信息的原始来源在此Google网上论坛中共享.
NumberPicker内部窗口小部件已从Android源代码中提取并打包供您使用,您可以在此处找到它.效果很好!
编辑:原始链接已关闭,您可以在此处找到该小部件的副本