2014-01-20 3 views
1

Я разрабатываю приложение, которое должно быть в полноэкранном режиме.Скрыть панель кнопок в android

enter image description here

Я пытался использовать этот код в моем манифесте,

android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 

, но ничего не произошло, и еще кнопка бар (например, Home, Back и Recent Task App) был там. Мне нужно скрыть их, чтобы полностью иметь полный экран. Пожалуйста, помогите мне с этим. Спасибо.

ответ

0

После долгих исследований, я, наконец, понять это и сделать свою деятельность в полноэкранном режиме.

getWindow().getDecorView().setSystemUiVisibility(8); 
+0

API 16 и ниже. Не работает в 4.2.1 (api 17) – idrumgood

1

Попробуйте написать этот код перед setContentView(R.layout.MainActivity);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
       WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 

Этот код работает для меня

+1

Я не уверен, что искатель хочет, чтобы панель со временем и т. Д. Тоже спряталась. –

+0

В моем коде панель задач со временем фактически скрыта. Но панель кнопок не ... – androidBoomer

+0

Я попытался использовать ваш код, но ничего не произошло. – androidBoomer

4
View decorView = getWindow().getDecorView(); 
// Hide both the navigation bar and the status bar. 
// SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as 
// a general rule, you should design your app to hide the status bar whenever you 
// hide the navigation bar. 
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
       | View.SYSTEM_UI_FLAG_FULLSCREEN; 
decorView.setSystemUiVisibility(uiOptions); 

см developer docs

из API 19 позже, вы можете использовать SYSTEM_UI_FLAG_IMMERSIVE_STICKY флаг:

View decorView = getWindow().getDecorView(); 
// Hide both the navigation bar and the status bar. 
// SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as 
// a general rule, you should design your app to hide the status bar whenever you 
// hide the navigation bar. 
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
       | View.SYSTEM_UI_FLAG_FULLSCREEN 
       | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; 
decorView.setSystemUiVisibility(uiOptions); 

см Docs here

+0

Он работает, но когда я нажимаю экран, панель кнопок снова отображается ... – androidBoomer

+0

@androidBoomer да, при таком подходе, касаясь в любом месте экрана, появляется панель навигации (и строка состояния), чтобы снова появиться и оставаться видимой. Пользовательское взаимодействие заставляет флаги очищаться. – bladefury

+0

Это стандартная практика. Взаимодействие с пользователем приведет к тому, что флаги будут очищены, чтобы включить навигацию. –

0

@bladefury имеет хороший ответ, но вы можете захотеть взглянуть на это, а также ...

Вы также описывающий новую функцию под названием 4.4 KitKatImmersive Mode. Обратите внимание, что для проверки этого требуется API 19.

Отъезд developer documents

+0

Я попробовал ответить @ A.Wie, и панель кнопок не скрывается ... – androidBoomer

+0

Я попробовал это либо ... – androidBoomer

Смежные вопросы