Android keyCode==KeyEvent.keyCode\u F不起作用

Android keyCode==KeyEvent.keyCode\u F不起作用,android,keyevent,keycode,Android,Keyevent,Keycode,我的android算法有问题。我希望当用户按f时发生某些事情。或者任何一个词,我已经尝试了其中的大部分和空格,唯一有效的编码是: if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == 0) 以下是有问题的部分: else if(keyCode == KeyEvent.KEYCODE_F && v.getId() == R.id.EditText1) {

我的android算法有问题。我希望当用户按f时发生某些事情。或者任何一个词,我已经尝试了其中的大部分和空格,唯一有效的编码是:

if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == 0)
以下是有问题的部分:

else if(keyCode == KeyEvent.KEYCODE_F && v.getId() == R.id.EditText1)
        {
            .. certain algorithm ..
        }
谢谢你的麻烦:)

否则你就试试看

   @Override
   public boolean onKeyDown(int keyCode, KeyEvent event) {
             do something...
       return super.onKeyDown(keyCode, event);
   }

“keyCode==KeyEvent.keyCode\u F”应该没有任何问题。您确定“v.getId()==R.id.EditText1”正在工作吗?您可以调试哪个条件失败吗?keyCode或v.getId()是否可能是从android软件包而不是应用程序包导入R?进行一些日志记录,在输入第二条else if()语句之前,记录
v.getId()
R.id.EditText1
。什么是
v
?我忘记了
R.id.EditText1
将返回什么,但如果是字符串,请使用
.compareTo(str)
,而不是
=
   @Override
   public boolean onKeyDown(int keyCode, KeyEvent event) {
             do something...
       return super.onKeyDown(keyCode, event);
   }