2011-01-19 15 views
1

私のゲームのキーボード入力に問題があります。私は現在、 "KEY DOWN"か "KEY UP"のいずれかをログに出力して機能することを確認しようとしています。私がキーを押したときに得られるのは、メニューキーでも、電話機の物理キーボード上の他のキーでも、ログ出力はキーボード入力エラー

01-20 02:53:57.718:WARN/System.errです。 (13847):キーボード設定が保存されていません。

私はそれが何を意味するのか分かりませんし、Google検索は役に立たなかったのです。私は自分自身にログ出力を入れなかった。私は月の着陸機の例から私のゲームを出発しています。誰もこれを見たことがありますか?

私がテストに使用していたコード:

@Override 
public boolean onKeyDown(int keyCode, KeyEvent msg) 
{ 
    if (keyCode == KeyEvent.KEYCODE_MENU) 
      { 
       Log.i("myActivity","KEY DOWN"); 
       return true; 
      } 
    else return false; 
} 

@Override 
public boolean onKeyUp(int keyCode, KeyEvent msg) 
{ 
    if (keyCode == KeyEvent.KEYCODE_MENU) 
      { 
       Log.i("myActivity","KEY UP"); 
       return true; 
      } 
    else return false; 
} 

EDIT:それはKEY DOWNまたはKEY UPのいずれかを出力しないことに注意してください、と私は移動しても、「もし(キーコードのうち、出力をログのいずれかを= = ...) "セクション、それでも実行されません。

+0

あなたのonkeydownはどこにありますか?あなたがこれをしているときに何が焦点を当てていますか? –

+0

彼らは私のメインビューのスレッドに含まれています。タッチ入力はこのスレッドではうまくいきます。私は "setFocusable(true);"コンストラクタで – Smills

+0

これは驚くほどイライラしています。誰にも全くアイデアはありますか?私はそれを修正するように見えることはできません:S。 – Smills

答えて

0

'setFocusableInTouchMode(true);'を追加して修正しました。コンストラクタに渡します。

関連する問題