Android ICSのランチャーで作業していますが、タブレットに問題があります。
ステータスバーを非表示にできません。 Android 2.3.Xで試してみましたが、問題ありません。問題はAndroid 4.0でのみ発生します。
どうすれば非表示にできますか?
タブレットのシステムバーを取り除くことはできません。あなたは電話のナビゲーションバーとステータスバーを取り除くことができるかもしれません。 Android 4.0 SDKリリースノート )の「システムUIの可視性のコントロール」セクションをお読みください。
Android 4.0では100%真のフルスクリーンを取得することはできません。
以下を使用して、通知バー(別名ステータスバー、システムバー)を暗くします。
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
そしてこれを使ってそれを隠す
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
そして、私が正しく推測するならば、あなたは「キオスクモード」を達成しようとしています。あなたは「surelock」という名前のアプリで少し助けを得ることができます。これにより、すべての「ホーム」および「バック」アクションがブロックされます。
それはまだ完璧ではありませんが、これはAndroid ICSで達成できる最善の方法かもしれません。
ルート権限を取得されたAndroidデバイスでステータスバーを非表示にすることができます。プログラム Hidebar はsystemuiプロセスを強制終了します。プログラムはオープンソースなので、読むことができます。 ソースコード ですべてについて。
http://ppareit.github.com/HideBar/ を参照してください。
私の答えが少し遅れることは知っていますが、さまざまな場所から情報を集めた後、私はこれを思いつきました。これはルート化されたデバイスでのみ機能します:
private void KillStatusBar()
{
Process proc = null;
String ProcID = "79"; //HONEYCOMB AND OLDER
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
ProcID = "42"; //ICS AND NEWER
}
try {
proc = Runtime
.getRuntime()
.exec(new String[] { "su", "-c",
"service call activity "+ProcID+" s16 com.Android.systemui" });
} catch (IOException e) {
Log.w(TAG,"Failed to kill task bar (1).");
e.printStackTrace();
}
try {
proc.waitFor();
} catch (InterruptedException e) {
Log.w(TAG,"Failed to kill task bar (2).");
e.printStackTrace();
}
}
これにより、ルート化されたデバイスの下部のバーが削除され、「kiosk」モードになります。
Android 4.0でステータスバーとナビゲーションバーを非表示にするには、以下のコードを使用する必要があります。
LinearLayout layout = (LinearLayout)findViewById(R.id.layout);
layout.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
Ppareitの答えに基づいて構築します。
ほとんどのストックデバイスでは、ナビゲーションバーを非表示にすることはできません。ただし、デバイスをルート化することがオプションである場合は、回避策があります。 1つのソリューションの手順は次のとおりです。
HideBarには、「キオスク」モードで実行するオプションがあります。このモードでは、ナビゲーションバーを再表示する方法はありません。言うまでもなく、あなたは本当にこれに注意する必要があります。