React Native全屏显示

14

我正在尝试创建一个简单的React Native应用程序。我需要在全屏模式下运行应用程序。有没有方法可以实现这一点?

我需要移除/隐藏底部按钮。 我是针对Android设备做的。

|---------------|
|               |
|    screen     |
|               |
-----------------
|  <|   O  [ ]  |     <--- I need to remove these buttons!
-----------------

screenshot

5个回答

12

@YthaloRossy,你觉得我的回答有帮助吗?谢谢。 - YasserKaddour
1
嗨@YthaloRossy,我很高兴你发现我的答案有帮助:)如果这个或任何答案解决了你的问题,请考虑通过点击复选框或投票(一旦你有足够的声望)来接受它。这向更广泛的社区表明你已经找到了解决方案,并为回答者和你自己赢得了一些声誉。没有义务这样做。 - YasserKaddour
1
我尝试过,但这只是一个原型。主要功能是在全屏和正常屏幕之间切换,但用户需要触摸屏幕。在我的情况下,我需要一个功能,始终将屏幕设置为全屏。我还会继续搜索,如果找到了,我会在这里与您分享。谢谢。 - Ythalo Rossy
如果您想要使用导航器,我推荐使用此解决方案 https://stackoverflow.com/a/49544136/3332734 - Francis Rodrigues

8

如果您在项目中使用Expo,则只需将以下内容添加到app.json文件中:

{
  "expo": {
    ...
    "androidNavigationBar": {
      "visible": "immersive"
    }
    ...
  }
}

app.json 文件是配置应用程序中不属于代码的部分的首选位置。它位于项目根目录旁边,与您的 package.json 文件在一起。有关 app.json 文件的更多信息,请访问此处:https://docs.expo.io/workflow/configuration/

androidNavigationBar 是 Android 底部导航栏的配置选项。将其设置为 immersive 会导致导航栏被隐藏,直到用户从导航栏隐藏的边缘向上滑动。有关 androidNavigationBar 选项的更多信息,请访问此处:https://docs.expo.io/versions/latest/config/app/#androidnavigationbar


这也隐藏了顶部栏。我指的是时钟、电池和网络等内容。 - Ali Aref

4
在你的项目Android清单文件中,选择全屏activity。

4

0

将以下代码添加到您的Android Native mainActivity中:

    /**
     * For fullscreen mode
     */
    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (hasFocus) {
            View decorView = getWindow().getDecorView();
            int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
            decorView.setSystemUiVisibility(uiOptions);
        }
    }

就像这样:

Like this


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接