Java setOnKeyListener onKey不适用于Eclipse/ADT Android虚拟设备-Nexus One

Java setOnKeyListener onKey不适用于Eclipse/ADT Android虚拟设备-Nexus One,java,android,eclipse,adt,onkeydown,Java,Android,Eclipse,Adt,Onkeydown,下面是我正在使用的代码。 当按下Enter键时,它会截取(使用)按键并单击屏幕上的按钮。 它在我的摩托罗拉安卓手机上运行良好,有硬件键盘和屏幕键盘。 它在Eclipse/ADT中的Galaxy Nexus Android虚拟设备上也可以正常工作。 但它在Eclipse/ADT中的NexusOne Android虚拟设备上不起作用。 有人知道为什么吗? 我担心有人会用NexusOne下载我的应用程序,但它不会工作 PS:我也尝试过其他几种onKey方法(使用onKeyUp、onKeyDown和AC

下面是我正在使用的代码。 当按下Enter键时,它会截取(使用)按键并单击屏幕上的按钮。 它在我的摩托罗拉安卓手机上运行良好,有硬件键盘和屏幕键盘。 它在Eclipse/ADT中的Galaxy Nexus Android虚拟设备上也可以正常工作。 但它在Eclipse/ADT中的NexusOne Android虚拟设备上不起作用。 有人知道为什么吗? 我担心有人会用NexusOne下载我的应用程序,但它不会工作

PS:我也尝试过其他几种onKey方法(使用onKeyUp、onKeyDown和ACTION_UP),但没有一种能与NexusOne一起使用

   MyEditText.setOnKeyListener(new EditText.OnKeyListener() 
   {
      public boolean onKey(View v, int keyCode, KeyEvent event)
      {
         if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER))
         {
         MyButton.performClick();
         return true;
         }
      return false;
      }

   });

也许你应该尝试使用
|
而不是
&&

,这并不是说这段代码不起作用,而是说与onKey相关的选项(我已经尝试过)在Nexus One虚拟设备上都不起作用,即使它们在其他设备上运行良好。尽管如此,我还是尝试了你的建议。不幸的是没有运气。谢谢你。
   MyEditText.setOnKeyListener(new EditText.OnKeyListener() 
   {
      public boolean onKey(View v, int keyCode, KeyEvent event)
      {
         if ((event.getAction() == KeyEvent.ACTION_DOWN) || (keyCode == KeyEvent.KEYCODE_ENTER))
         {
         MyButton.performClick();
         return true;
         }
      return false;
      }

   });