我想要一个类似手机的软键盘,只允许输入数字。
我可以用inputType="number"(软键盘是默认的,但只允许数字作为输入)实现"只有数字"的功能,用inputType="phone"实现类似手机的风格。但是,当像数字|电话一样放在一起时,即使样式是像电话一样的,软键盘也允许使用数字以外的符号。
我想要类似手机的风格,因为数字按钮更大,更容易按下,而且我只需要输入数字。
除了创建自定义键盘之外,还有什么建议吗?
当您直接设置输入类型时,您可以强制键盘为数字键盘,不确定是否有额外的按钮
EditText t = (EditText) findViewById(R.id.edittext1);
t.setRawInputType(Configuration.KEYBOARD_12KEY);
或
t.setRawInputType(InputType.TYPE_CLASS_PHONE);
我很早以前就用过第一个,它很有效,不确定最近的安卓版本。
但是,你不能影响布局。他们的键盘是由当前的键盘应用程序提供的,它可以做任何它想做的事情。甚至像给你2个按钮让用户输入莫尔斯电码这样的东西https://play.google.com/store/apps/details?id=org.emergent.android.morseime.
如果你得到的键盘不是你想要的,你必须实现自己的键盘——一个相对简单的10个按钮的布局并没有那么多工作。