Подтвердить что ты не робот

Скрыть панель уведомлений

Кто-нибудь знает, как отключить/скрыть панель уведомлений наверху, которые показывают батарею и другие вещи в Android. Любая помощь будет оценена.

РЕДАКТИРОВАТЬ: Также добавьте, как я могу скрыть ActionBar + NotificationBar для более поздних версий Android.

4b9b3361

Ответ 1

Вы можете использовать тему в своем AndroidManifest.xml:

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

или изменить родительский элемент вашего AppTheme на @android: style/Theme.NoTitleBar.Fullscreen, как этот

<style name="AppTheme" parent="Theme.NoTitleBar.Fullscreen">
</style>

затем примените эту тему к действиям, которые вы хотите использовать в полноэкранном режиме, например

android:theme="@style/AppTheme"

или используйте следующий фрагмент кода:

public class FullScreen
    extends android.app.Activity
{
    @Override
    public void onCreate(android.os.Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

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

        setContentView(R.layout.main);
    }
}

Ответ 2

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    getWindow().requestFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}

Ответ 3

Ответы выше скрывают ActionBar. Если вы намерены скрывать панель уведомлений только, используйте этот код:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

будьте осторожны, чтобы поместить его перед setContentView().

Ответ 4

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

Ответ 5

Успешно реализована слегка измененная версия предложения @Martin вместе с пользовательской темой, чтобы избавиться от BOTH Status и панели навигации.

public class MyActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //* Hides Notification Bar
    getWindow().requestFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

    setContentView(R.layout.activity_my);
}

Верхняя часть используется, чтобы избавиться от строки состояния. Добавьте следующий код в свой @styles в качестве ресурса, чтобы убить NavBar.

 <resources> <style name="NoNav" parent="@android:style/Theme.Holo.Light">
    <item name="android:windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>
</style> </resources>

После того, как вы добавите это в свой файл ресурсов, откройте AndroidManifest.xml и добавьте тему своего приложения в "@style/NoNav".

Удалено вирусы для Android UI:)

Ответ 6

Вы можете использовать это для версий 4.1 или более поздних версий.

View decorView = getWindow().getDecorView();    
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);