2013-02-27 8 views
7

私のビデオプレイアプリケーションでは、このフラグを使用します:SYSTEM_UI_FLAG_HIDE_NAVIGATIONナビゲーションバーは消えますが、画面をタッチするとナビゲーションバーが表示されます最初のタッチ、私のタッチイベントや他のイベントは正常に動作します。アンドロイドフルスクリーンモード(ICS)では、最初のタッチでナビゲーションバーが表示されます

私の質問は、どのように最初のタッチを引き継ぐことができますか?

答えて

6

本当に最初のイベントを引き継ぐことはできません。 View.OnSystemUiVisibilityChangeListenerを実装して、ナビゲーションバーが表示または非表示になったときに通知を受けて、可能であれば、現在の状態に応じて最初のタッチで行ったことを実行します。

しかし、SYSTEM_UI_FLAG_HIDE_NAVIGATIONのドキュメントに記載されているように、あなたが完全に、最初のタッチを引き継ぐことができます方法はありません。

制限があります:ナビゲーションコントロールは非常に重要であるため、少なくともユーザインタラクションがします直ちにそれらを再現させる。これが発生すると、このフラグとSYSTEM_UI_FLAG_FULLSCREENの両方が自動的にクリアされ、両方の要素が同時に再表示されます。

関連する問題