【发布时间】:2012-05-29 17:20:30
【问题描述】:
可能重复:
Open a numeric keyboard without forcing the EditText to be numeric only
在我的应用程序中,我有一个仅接受整数值的 EditText 字段。所以我认为当我点击这个 EditText 时,自动打开小键盘而不是字母会更好。
How can i achieve this??
【问题讨论】:
标签: android
可能重复:
Open a numeric keyboard without forcing the EditText to be numeric only
在我的应用程序中,我有一个仅接受整数值的 EditText 字段。所以我认为当我点击这个 EditText 时,自动打开小键盘而不是字母会更好。
How can i achieve this??
【问题讨论】:
标签: android
在定义 EditText 时在 xml 文件中,将 inputType 添加为 Number
android:inputType="number"
【讨论】:
使用xml布局属性
为此,您可以在 EditText xml 定义中使用多个 xml 属性(请参阅android:inputType 了解可用选项)
例子:
<EditText android:inputType="phone" ...
<EditText android:inputType="number" ...
<EditText android:inputType="numberSigned" ...
<EditText android:inputType="numberDecimal" ...
您还可以提示 android 显示数字键盘并使用 android:numeric 将输入限制为可接受的字符
例子:
<EditText android:numeric="integer" ...
<EditText android:numeric="signed" ...
<EditText android:numeric="decimal" ...
以编程方式
将EditText.setRawInputType(int) 与您将在android:inputType 中找到的TYPE_CLASS_NUMBER 等常量一起使用
或
EditText editView = new EditText(this);
editView.setKeyListener(new NumberKeyListener())
EditText editView = new EditText(this);
editView.setKeyListener(new DigitsKeyListener());
希望有帮助
【讨论】:
请参阅 TextView 文档,因为 EditText 是从它扩展而来的:
http://developer.android.com/reference/android/R.styleable.html#AutoCompleteTextView_inputType
【讨论】: