2016-03-21 12 views
0

andEngineでゲームを開発し、アンドロイドデバイスのハードウェアメニューボタンに問題が発生しました。私がしたいことは、メソッド ""を呼び出して、以下のコードで作成したカスタムメニューシーンを表示することです。ただし、HWメニューボタンをタップすると、メソッドの代わりにアプリのリストが表示されます。メニューボタンからメソッドを呼び出す方法を教えてください。私はあなたから聞くのが大好きです!HWメニューボタンをクリックしたときにメソッドを呼び出すことができません

@Override 
    public boolean dispatchKeyEvent(KeyEvent e) { 
     if (e.getAction() == KeyEvent.ACTION_DOWN && e.getKeyCode() == KeyEvent.KEYCODE_BACK) { 
      //if paused 
      if (isPaused) { 
       //use thread when tring to use detachself and detachChildren 
       getBaseActivity().runOnUpdateThread(new Runnable() { 
        @Override 
        public void run() { 
         for (int i = 0; i < pauseBg.getChildCount(); i++) { 
          unregisterTouchArea((ButtonSprite) pauseBg.getChildByIndex(i)); 
         } 
         pauseBg.detachChildren(); 
         pauseBg.detachSelf(); 
        } 
       }); 
       isPaused = false; 
       isTouchEnabled = true; 
       return true; 
      } else { 
       return false; 
      } 

     } else if (e.getAction() == KeyEvent.ACTION_DOWN && e.getKeyCode() == KeyEvent.KEYCODE_MENU) { 
      //if not paused show menu 
      if (!isPaused) { 
       showMenu(); 
      } 
      return true; 
     } 
     return false; 
    } 

答えて

1

多くのアンドロイドデバイスには、物理​​的またはタッチスクリーンのメニューボタンが付いていません。あなたのデバイス上のボタンは、あなたが説明した通りに正確に行うことを目的としたタスクマネージャーボタンである可能性が非常に高いです(実行中/バックグラウンドのアプリケーションのリストを表示します)。

ゲームのメニューボタンをオーバーライドすることを避けるか、少なくともクライアントにメニューボタンとして機能する別のオンスクリーンスプライトを提供することをお勧めします。

関連する問題