我需要按下一个键并返回键码。在软件键盘上按下的键,我试图找到关于它的示例和解释,但它们有点模糊。
有谁知道并可以向我解释如何捕捉键盘按键?(我知道 onKeyListener 对我不好,我找到了 onKeyActionListener 但我仍然不明白如何使用它,如果它真的是我需要的)
我需要按下一个键并返回键码。在软件键盘上按下的键,我试图找到关于它的示例和解释,但它们有点模糊。
有谁知道并可以向我解释如何捕捉键盘按键?(我知道 onKeyListener 对我不好,我找到了 onKeyActionListener 但我仍然不明白如何使用它,如果它真的是我需要的)
我认为你正在寻找的东西是
editText.setOnKeyListener(new OnKeyListener()
{
public boolean onKey(View v, int keyCode, KeyEvent event)
{
if (event.getAction() == KeyEvent.ACTION_DOWN)
{
switch (keyCode)
{
case KeyEvent.KEYCODE_ENTER: //or any other key
//do something
return true;
default:
break;
}
}
return false;
}
});
这是使用解决方法对类似问题的回答。
您还可以查看OnEditorActionListener的TextView
。
一个常规的 KeyListener 大部分时间都在工作,但这里有一个来自docs的引用:
软输入法上的按键不需要触发此侦听器中的方法,实际上不鼓励这样做。默认的 android 键盘不会为针对 Jelly Bean 或更高版本的任何应用程序的任何键触发这些,并且只会为针对 Ice Cream Sandwich 或更早版本的应用程序的某些按键提供它。