Я работаю в Launcher для Android ICS, но у меня проблема с планшетами.
Я не могу скрыть строку состояния. Я попробовал его в Android 2.3.X, и все в порядке. Проблема возникает только с Android 4.0.
Как я могу скрыть это?
Я работаю в Launcher для Android ICS, но у меня проблема с планшетами.
Я не могу скрыть строку состояния. Я попробовал его в Android 2.3.X, и все в порядке. Проблема возникает только с Android 4.0.
Как я могу скрыть это?
Вы не можете избавиться от системной панели на планшетах. Вы можете избавиться от панели навигации и строки состояния на телефонах. Пожалуйста, ознакомьтесь с разделом "Элементы управления для пользовательского интерфейса системы" примечаниями к выпуску Android 4.0 SDK.
Вы не можете получить 100% правдивый полный экран в Android 4.0.
Используйте следующее, чтобы уменьшить панель уведомлений (например, строка состояния, системная панель)
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
И используйте это, чтобы скрыть его
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
И, если я правильно понимаю, вы пытаетесь достичь "режима киоска". Вы можете получить небольшую помощь в приложении с именем "surelock". Это блокирует все действия "дома" и "назад".
Это все еще не идеально, но это может быть лучшее, что мы можем достичь с помощью Android ICS.
Можно скрыть панель состояния на корневом устройстве Android. Программа Hidebar делает это, убивая процесс systemui. Программа является открытым исходным кодом, поэтому вы можете прочитать все об этом в исходном коде.
Я знаю, что мой ответ наступает немного позже, но после сбора информации из разных мест я придумал это, которое работает ТОЛЬКО НА КОРОТКИХ УСТРОЙСТВАХ:
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();
}
}
Это должно устранить нижнюю панель на любом корневом устройстве и превратить ее в режим "киоска".
Чтобы скрыть строку состояния и панель навигации в android 4.0, мы должны использовать код ниже:
LinearLayout layout = (LinearLayout)findViewById(R.id.layout);
layout.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
Основываясь на ответе ppareit.
Вы не можете скрыть панель навигации на большинстве складских устройств. Тем не менее, есть работа, если вы укореняете устройство, является опцией. Ниже приведены шаги для одного решения:
В HideBar есть возможность запускаться в режиме "Киоск", в котором нет возможности повторно отобразить панель навигации. Само собой разумеется, вам действительно нужно быть осторожным с этим.