アプリが起動したら、ソフトキーバー(赤い四角形)を非表示にして、画面を大きくします。
どうすれば非表示にできますか?
アプリが終了したときにバーを意図的に表示する必要がありますか?または、アプリの終了後に自動的に復元されますか?
Android 4.1。電話の前面にハードウェアキーはありません。
試す
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
公式から doc
SYSTEM_UI_FLAG_LOW_PROFILEフラグは、STATUS_BAR_HIDDENフラグを置き換えます。このフラグを設定すると、システムバーまたはナビゲーションバーの「ロープロファイル」モードが有効になります。ナビゲーションボタンが暗くなり、システムバーのその他の要素も非表示になります。これを有効にすると、システムナビゲーションボタンの邪魔にならない、より没入型のゲームを作成するのに役立ちます。
SYSTEM_UI_FLAG_VISIBLEフラグはSTATUS_BAR_VISIBLEフラグを置き換えて、システムバーまたはナビゲーションバーの表示を要求します。
SYSTEM_UI_FLAG_HIDE_NAVIGATIONは、ナビゲーションバーを完全に非表示にすることを要求する新しいフラグです。これは一部の携帯電話で使用されるナビゲーションバーに対してのみ機能することに注意してください(タブレットのシステムバーを非表示にしません)。システムがユーザー入力を受け取るとすぐに、ナビゲーションバーが表示に戻ります。そのため、このモードは主にビデオの再生や、画面全体が必要であるがユーザー入力が不要なその他の場合に役立ちます。
ナビゲーションバーの動作はアプリに依存するIIRCなので、ユーザーがアプリを離れると再び表示されます。
私は遅いことは知っていますが、それは正しい答えです。したがって、あなたがやろうとしているのは、没入型モードと呼ばれるものです。 (API 19)
チェックアウト: https://developer.Android.com/training/system-ui/immersive.html
あなたが求めていたコードは次のとおりです:
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
}