关于android的几个问题:
是否可以替换默认键盘中的键?例如,是否可以将数字键盘中的点替换为逗号?
我写了一个非常简单的输入法,但我不能将它设置为EditText。这有可能吗?inputMethod属性是如何工作的?我设置了IME的完全限定类名,但它引发了类未找到异常。
谢谢。
发布于 2011-07-23 19:01:31
Is it possible to replace the keys in default keyboards ? 你不需要。用户可以控制他们的设备,包括使用什么键盘。
但是你可以试着做一些输入法
阅读本教程:Creating an Input Method
克隆此存储库:LatinIME
如果替换一个字符是您的要求,您可以覆盖edittext的文本更改侦听器,并检查每个输入的字符,如果用户输入点,则将其替换为逗号
editText.addTextChangedListener(new TextWatcher(){
public void afterTextChanged(Editable s) {
//Check if s contains dot and replace it with comma
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){}
public void onTextChanged(CharSequence s, int start, int before, int count){}
}); 但此方法将执行EditText中的每个击键操作。
发布于 2011-07-23 18:08:10
尝试覆盖此method.return的另一个keyCode,并查看结果
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == someKeyCode) {
//...... button is pressed
}
return super.onKeyDown(keyCode, event);
}发布于 2011-07-23 18:15:10
可以肯定的是,替换默认键盘中的按键是不可能的,您需要编写自己的键盘替换,就像所有的键盘应用程序一样。
https://stackoverflow.com/questions/6799509
复制相似问题