【问题标题】:Hide status bar until exit隐藏状态栏直到退出
【发布时间】:2016-07-08 19:40:01
【问题描述】:

我已经设法在启动时隐藏状态栏。但是每当我触摸控件状态栏时就会出现。为了解决这个问题,我尝试使用此代码在每次触摸时隐藏它,但它首先显示然后隐藏。这个循环永远持续下去。

private View mContentView;
private View mControlsView;

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

    setContentView(R.layout.activity_testgame);

    mControlsView = findViewById(R.id.fullscreen_content_controls);
    mContentView = findViewById(R.id.fullscreen_content);

    mContentView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            ActionBar actionBar = getSupportActionBar();
            if (actionBar != null) {
                actionBar.hide();
            }
            mControlsView.setVisibility(View.GONE);
            mContentView.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);
        }
    });

我也尝试更改主题android:theme="@android:style/Theme.NoTitleBar.Fullscreen",但在我触摸控件之前仍将其隐藏。我想隐藏它,直到我退出应用程序。无需root权限也可以这样做,因为我玩的大多数游戏都可以隐藏它,直到我退出游戏或向下滑动

【问题讨论】:

    标签: android statusbar


    【解决方案1】:

    我刚刚在this 页面上找到了永久隐藏状态栏的解决方案。

    首先我添加了这个import android.view.WindowManager;

    那么这里是我的OnCreate函数:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_testgame);
    
        //Hide status bar
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    
        //Hide action bar
        ActionBar actionBar = getSupportActionBar();
        if (actionBar != null) {
            actionBar.hide();
        }
    
    }
    

    这段代码可以帮助你再次显示状态栏

    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);// Show status bar
    

    【讨论】:

      猜你喜欢
      • 2016-10-21
      • 1970-01-01
      • 2011-04-29
      • 2014-10-30
      • 2017-03-20
      • 2013-11-12
      相关资源
      最近更新 更多