类似电话的数字软键盘

时间:2012-08-27 22:36:52

标签: android android-widget user-input android-edittext android-softkeyboard

我想要一个类似手机的软键盘,只允许输入数字。

我可以用inputType =“number”(其中软键盘默认但只允许数字作为输入)和类似电话的样式(inputType =“phone”)来实现“唯一数字”。但是,即使风格是手机式,也像手机一样放在一起时,软键盘允许除了数字以外的符号。

我希望手机般的风格,因为数字按钮更大,更容易按,我只需输入数字。

除了创建自定义键盘之外还有什么建议?

1 个答案:

答案 0 :(得分:5)

当您直接设置输入类型时,可以强制键盘为数字键盘,不确定是否有额外的按钮

EditText t = (EditText) findViewById(R.id.edittext1);

t.setRawInputType(Configuration.KEYBOARD_12KEY);

t.setRawInputType(InputType.TYPE_CLASS_PHONE);

我很久以前就使用了第一个,但它确实有用,不确定最近的Android版本。

但是,你无法影响布局。它们的键盘由当前使用键盘的应用程序提供,它可以做任何想做的事情。甚至可以给你两个按钮让用户输入像https://play.google.com/store/apps/details?id=org.emergent.android.morseime这样的莫尔斯代码。

如果这是键盘,那么你得到的不是你想要实现自己的键盘 - 一个带有10个按钮的相对简单的布局并不是那么多。