2013-04-30 3 views
21

enter image description hereAndroid携帯のソフトキーバーを非表示にするにはどうすればいいですか?

私のアプリが起動したら、ソフトキーバー(赤い四角形)を隠して、大きな画面を表示したいと思います。

  1. どうすれば非表示にできますか?

  2. アプリが終了したときにバーを意図的に表示する必要はありますか?または、アプリケーションが終了した後に自動的に復元されますか?

Android 4.1、電話機前面にハードウェアキーはありません。

+0

可能重複/ questions/12605266/hide-system-bar-in-tablets) – jprofitt

+0

他にも役立つ情報:[Android ICSのシステムバーを隠す簡単な方法](http://stackoverflow.com/questions/10445157/easy-way-to- hide-system-bar-on-android-ics) – jprofitt

答えて

19

はSYSTEM_UI_FLAG_LOW_PROFILEフラグがSTATUS_BAR_HIDDEN フラグを置き換え公式doc

から

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION); 

を試してみてください。このフラグをオンにすると、システムの バーまたはナビゲーションバーの「ロープロファイル」モードが有効になります。 のナビゲーションボタンのdimとその他の要素は、システムバーも非表示に設定されています。ボタン。

SYSTEM_UI_FLAG_VISIBLEフラグは、システムのバーやナビゲーションバーが見えるよう要求するSTATUS_BAR_VISIBLEフラグ を置き換えます。

SYSTEM_UI_FLAG_HIDE_NAVIGATIONは完全に ナビゲーションバーの非表示を要求した新しいフラグです。これはのみ動作することに注意してください一部のハンによって使用されている ナビゲーションバーdsets(タブレットのシステム バーを非表示にしません)。 システムがユーザー入力を受信するとすぐにナビゲーションバーが表示されます。したがって、このモードは、主に ビデオ再生または画面全体が必要であるが、ユーザ入力が不要な の場合に有効です。

ナビゲーションバーの動作はアプリケーションに依存するIIRCなので、ユーザーがアプリを離れると再び表示されるはずです。

+1

ありがとう!上記のコードは、バーを期待どおりに隠しています。しかし、アクティブなアプリの画面に触れると、バーが再び表示されます。残りのアプリライフサイクルでバーを非表示にするにはどうすればよいですか? – ohho

+0

ユーザーがアプリと対話するたびに、ナビバーが表示されます。これは、公式の文書によると、意図的な行動です。残念ながら、あなたがインタラクションを期待するたびにバーを隠さなければならないと思います。 https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_HIDE_NAVIGATION – MarsAtomic

+2

@MarsAtomic APIレベル19以降、SYSTEM_UI_FLAG_IMMERSIVEとSYSTEM_UI_FLAG_IMMERSIVE_STICKYがあります。 – user457015

27

私はそれが遅いと知っていますが、正しい答えです。あなたがしようとしていることは、没入型モードと呼ばれるものです。 (API 19)

チェックアウトのために:https://developer.android.com/training/system-ui/immersive.html

あなたが求めていたコードは次のとおりです。http://stackoverflow.com([錠でシステムバーを非表示にする]の

@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); 
    } 
} 
+0

ありがとうございますが、私は直面していますキーボードを開くと、下のレイアウトが切り取られてしまいます。 –

+0

@PraveenPandeyあなたは偽のタグを付け加えるべきです。 – mhdjazmati

+2

最後にそれは仕事です。コードはすべてですが、ポイントはその中にありますonWindowFocusChanged。ありがとう! – Mete

関連する問題