android - 是否有在 Android 中输入整数的 View ?

标签 android user-interface integer

我正在寻找日期选择器对话框的各个部分。允许您输入可以限制(例如 1 到 10 之间)的整数(并且仅限整数)的 View ,您可以在其中使用键盘或 View 本身中的箭头。存在吗?

这是一个对话框。请求整数的现成对话框也会有所帮助。

最佳答案

NumberPicker 小部件可能是您想要的。不幸的是,它位于 com.android.internal.Widget.NumberPicker 中,我们无法通过正常方式访问。

有两种使用方式:

  1. 从安卓源复制代码
  2. 使用反射访问小部件

这是在布局中使用它的 xml:

<com.android.internal.widget.NumberPicker
    android:id="@+id/picker"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

这是设置 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 Group 中共享.

关于android - 是否有在 Android 中输入整数的 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/523510/

相关文章:

android - 如何在 ListFragment 中触发 onListItemClick

python - 将自定义 JS 添加到 Django 管理字段

android - 有什么办法可以结束 Android 2.3 后的通话吗?

android - 错误: list 合并失败:uses-sdk:minSdkVersion 1 不能小于库 [__tested_artifact__::CordovaLib] 中声明的版本 19

android - 应用程序可能在其主线程上做了太多工作 (Android)

javascript - 移动 Safari 上的可保持 html 按钮

javascript - android中用户界面的webview

c++ - 如何使用字符串和整数获取汽车类的整数结果

java - 将 int/long 零转换为 double

Python ---- 类型错误 : string indices must be integers