2013-09-27 10 views
16

私はカスタムイメージをビルドしています。アンドロイドソースを使用しています。アンドロイドのソフトキーボタンをオフにしたいのですが、ソースファイルを変更するにはどうすればいいですか? enter image description hereボトム画面のボタンバーを削除するには

+1

Youtubeはそうです –

+2

@DjHacktoRebornどのようにあなたは結論に達していませんでしたか?いくつかのアプリケーションは、少なくとも異なる時間にこのバーを隠す。 – jwir3

答えて

20

単にbuild.prop編集する必要が限り私はあなたを知っているように、それらを無効/有効にするには:

qemu.hw.mainkeys=0 (show on screen buttons) 

または

qemu.hw.mainkeys=1 (disable on screen buttons) 

ラインが存在しない場合は、あなたのbuild.propは、下に追加します。

+0

このbuild.propは、ソフトボタンを使用するすべてのAndroid搭載端末に常に存在するのですか、それともメーカーごとに異なるのでしょうか? – JohnyTex

6

ただし、永久にそれを隠すことはできません。

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

ユーザーがあなたのアプリと対話するまで、このコードは、ソフトキーを隠します。これは意図的にこのように設計されており、現在の画面を終了してそのキーを非表示にする手段を用意していないと、ユーザーは一方向のデッドエンドで「トラップ」されます。

さらにhereを見つけることができます。

+0

これは一時的な解決策ですが、これは通常の状況では非常に便利な解決策です。 – Shri

+0

Welp、画像を作成していることに気付かず、アプリ内ソリューションが必要だと思っていました。明らかに、これはあなたの正確なユースケースではありません。 :) – hundeva

+0

ありがとう、これは私がスクリーンショットを取るのに役立ちました。アプリとやりとりした後でも、一番下のバーを隠すために、私はこのメソッドを1秒ごとに実行するループで呼び出します(スクリーンショットをとると一時的にちょうど)。 – VinceFior

-1

私は、これはソフトキーがgetWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);を試してみてください非表示にするには

可能だと思うが、それはタブレット4+上で動作していません。

3

サムスン用の新しいSureLockが導入されているため、ボトムバーを無効にしたり隠したりすることはできません。あなたがしなければならないのは、サムスンのためSureLockロックダウンをインストールし、次のサイトに記載された手順に従うことで、

http://www.42gears.com/blog/2013/07/disablehide-android-bottom-bar-without-rooting-samsung-galaxy-tablets/

次link.Itをチェックしてくださいあなたがそれを理解することに役立つことがあります。

http://www.42gears.com/blog/2012/02/disable-bottom-bar-in-android-honeycomb-tablets-with-surelock/

1

あなたが唯一のナビゲーションバー(ボタンバー)が少ない気が散るようにしたい場合は、のonCreateでこのコードを使用youractivity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE)

4
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); 

を試してみてください。しかし、これは、あなたが確認するためにonWindowFocusChangedイベントで彼のコードを置くことができ、上記AykutブラクSAFAKの答えに加えて19

4

以上のAPI LVを必要とするActivityはフォーカスを取得したときに(例えばロック解除後)には、ソフトキーの状態なしでフルスクリーン保持し。

@Override 
public void onWindowFocusChanged(boolean hasFocus){ 
    super.onWindowFocusChanged(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

はい、あなたの活動でこれを使って、次のことができます。

@Override 
public void onWindowFocusChanged(boolean hasFocus) { 
     super.onWindowFocusChanged(hasFocus); 
    if (hasFocus) { 
     decorView.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);} 
} 
5

下部のナビゲーションバーなしでスクリーンショットを取るための最も簡単な方法は、エミュレータ(AVD)を使用し、その設定ファイルを編集することです。

GoがAVD /仮想device.avd

次に設定を編集/ .androidします。INI:

hw.mainKeys=yes 
hw.keyboard=yes 

の両方が「yes」に

、再びバーを参照してください「いいえ」に戻ってそれらを設定することができるようにするために設定する必要があります。

+0

ステータスバーのデモモードと組み合わせて、新しいAndroid Studioエミュレータのプロモーション写真を撮るのに、これは完璧に機能します。 新しいエミュレータはrootではないので、build.propを簡単に変更することはできませんが、これは非常に良い回避策です。 – Gira

+0

私にとっては動作しません。メインキーをyesに変更すると、起動時にエミュレータがハングします。 noに戻すと、再び起動します。 Nexus 5X API 26 – thanhbinh84

+2

@ thanhbinh84は同じ問題を抱えていますが、Pixel API 23でうまく動作します –

関連する問題