У меня есть активность с двумя панелями инструментов, одна вверху и одна внизу. Я использую инверсный режим, и теперь он работает нормально, он позволяет пользователю перетаскивать строку состояния вниз...
Проблема в том, что строка состояния больше никогда не скрывается после того, как ее перетащили вниз...
Я нашел несколько решений здесь, но я просто не мог заставить его работать. Либо строка состояния отображается поверх моего представления, либо она испортится, если я открою дополнительное меню, либо просто не скроется снова...
Это то, что я использую в настоящее время:
@Override
protected void onResume()
{
super.onResume();
enableFullScreenMode();
}
private void enableFullScreenMode()
{
if (Build.VERSION.SDK_INT < 16)
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
else
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_FULLSCREEN
// | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
// | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
);
}
Что я хочу
- всегда в полноэкранном режиме, пока пользователь не перетащит строку состояния вниз
- через например 3с строка состояния должна снова скрыться, если она не открывалась
- после закрытия строки состояния она должна снова быть скрыта
- при открытии моего дополнительного меню на панели инструментов строка состояния НЕ должна отображаться