单击EditText时,我想要一个软输入键盘。我希望键盘在开始时是数字,但是当用户按空格时,它变成普通的alpha键盘。我读了一个关于这个问题的答案,他们说:使用:
yourEditText.setRawInputType(Configuration.KEYBOARD_QWERTY);
但在某些手机中,键盘中没有空格按钮。任何的想法?感谢。
答案 0 :(得分:0)
在xml:
中的yout edittext中添加此行android:inputType="number"
<强>编辑:强>
在onTextChanged侦听器editText中添加这些:
if((event.getAction()==KeyEvent.ACTION_DOWN)&&(key == KeyEvent.KEYCODE_SPACE)){
InputMethodManager m = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
if(m != null){
m.toggleSoftInput(0, InputMethodManager.SHOW_IMPLICIT);
}
}
答案 1 :(得分:0)
使用TextWatcher,当您检测到空格时,请更改为正常的键盘布局。
onTextChanged(CharSequence s, int start, int before, int count)
{
String inputText = s.toString();
// to detect space in String see http://stackoverflow.com/a/4067825/1008278
if(spaceAvailable)
{
changeLayout();
}
}