2011-07-30 13 views
1

SurfaceViewで図面を描画しているのに、「戻る」キーを傍受するのに問題があります。私のonKeyDownイベントは、2回目以降のキーイベントでのみ呼び出されるように見えます。これは、アクティビティが既に一時停止または終了しているため、バックキーにとっては役に立たないことです。Android SurfaceViewの問題

私は、focusableとtouchmodefocusableがセットされていることを確認して、私のonkeydownハンドラをビューから移動してアクティビティなどに移動させたすべての提案を試みました。エミュレータとハードウェアで同じように動作します。

これはフォーカスと関係があるとわかっていますが、キーイベントとタッチイベントのフォーカスを同時に受け取るために表面ビューを取得できないようです。

私はこの問題を抱えている理由を理解できないので、私は真剣にこれに嫌われています。

ありがとうございました。

+0

これを解決しました。なぜなら、何らかの理由でrequestFocus()呼び出しで 'before'を呼び出すと、setFocusable(true)フラグがそのトリックを行いました。誰かbtwこれはサーフェイスビューのコンストラクタで行われます。 – Chris

答えて

1

これを解決しました。何らかの理由でrequestFocus()を呼び出す前に 'set'を設定するとsetFocusable(true)フラグがトリックを行いました。誰かbtwこれはサーフェイスビューのコンストラクタで行われます。

他の人に役立つ場合は、これを回答にコピーします。