【问题标题】:How do I correctly implement Immersive Full-Screen Mode in Android?如何在 Android 中正确实现沉浸式全屏模式?
【发布时间】:2016-10-28 22:14:12
【问题描述】:

我有一个应用程序,其中有一个包含多个片段层的活动。我想在应用程序的某些状态下在沉浸式模式和普通模式之间切换。一切都很好,直到我按照 Android Documentation 调用隐藏系统 UI

碎片的大小开始变得奇怪。在堆栈溢出中找不到任何解决方案有任何帮助。

我已将项目上传到 GitHub 。您能否就我做错了什么提供一些见解?

  1. 项目启动时

  2. 当另一个 Fragment 添加到同一个 FrameLayout 时

  1. 在触发沉浸式模式时将第三个片段添加到另一个 FrameLayout 时

  1. 问题开始 当第三个片段的视图最小化时,我们触发“正常模式”。先前片段的顶部和底部被切掉。

此外,转到全屏,旋转,然后点击 PIP。越来越丑了。

我已将项目上传到 GitHub 。您能否就我做错了什么提供一些见解?

【问题讨论】:

    标签: java android android-fragments android-6.0-marshmallow android-immersive


    【解决方案1】:
    public void showSystemUI() {
            View decorView = getWindow().getDecorView();
    
            if (decorView != null) {
                decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                        | View.SYSTEM_UI_FLAG_VISIBLE  | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                );
            }
    }
    

    让它变得更好,但状态栏和嵌套视图大小仍然存在问题。

    【讨论】:

      猜你喜欢
      • 2016-08-25
      • 2013-12-23
      • 2014-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多