闪屏启动画面未隐藏底栏

时间:2019-07-17 07:41:57

标签: android flutter splash-screen android-bottomnav

我在flutter应用程序(在Android端)上添加了一个启动屏幕,如下所示:

打开values / styles.xml并添加以下内容:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
        <!-- Show a splash screen on the activity. Automatically removed when
             Flutter draws its first frame -->

        <!--following 2 lines modified by me-->

        <item name="android:windowBackground">@drawable/splash_screen</item>
        <item name= "android:windowFullscreen">true</item>
    </style>
</resources>

但是,当我在真实设备中运行该应用程序时,初始屏幕显示了奇怪的行为:

我不确定飞溅显示了几秒钟,但是,举例来说,飞溅持续了3秒钟,在开始的1或1.5秒钟内,屏幕底部看起来像这样,显示了底部软件按钮:

enter image description here

在这1或1.5秒后,底部的栏消失,并且初始屏幕又显示了预期的1或1.5秒,然后启动了应用程序。

如何解决此问题,以使启动画面从一开始就覆盖整个屏幕?

1 个答案:

答案 0 :(得分:1)

MainActivity.java

这样写:

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    this.getWindow().getDecorView().setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}