这已被网上其他地方要求无济于事。在聚焦EditText
时,Android中是否有任何方式显示数字软键盘,但是仍允许输入任何文本?
我想让用户输入数量(例如“1公斤”,“2公升”),因此只需设置inputType="number"
即可。
答案 0 :(得分:35)
添加以下代码行,它将起到作用:)
editText.setRawInputType(Configuration.KEYBOARD_QWERTY);
这将首先显示数字小键盘,但也允许您输入自由文本。
更多信息here。
答案 1 :(得分:8)
这可能取决于设备,但您尝试过:
android:inputType="phone"
<\ n>在EditText的xml中,这会为您提供数字键盘键盘,但如果需要,您仍然可以切换到字母键盘。 (至少在我的Nexus One上)。
答案 2 :(得分:7)
请注意:setRawInputType(InputType.TYPE_CLASS_NUMBER);
对某些设备有预期效果,但对其他设备没有...
在htc上它工作正常但是在galaxy tab II上你只能得到数字键盘而无法切换回alpha。
答案 3 :(得分:4)
用XML编写代码, 机器人:数字=“整数” 安卓的inputType =“手机” 机器人:位数= “1234567890”
答案 4 :(得分:2)
看起来您正在处理的基本问题是:如何让用户输入数量?
一个合适的答案是:使用数字输入,与单位的某种形式的类别选择配对。例如收音机,下拉菜单或微调器。这可能更容易使用,也让您每次都必须验证输入时头疼。
你也可以使用铁制cojones并编写自定义软键盘。
答案 5 :(得分:-1)
在我弄清楚之前,我尝试了很多不同的组合,但这似乎可以正常工作:
setRawInputType(InputType.TYPE_CLASS_NUMBER);
关键在于setRawInputType(int)
的描述:
直接更改文本视图的内容类型整数,不用 修改任何其他状态。