Android 启动屏幕上的沉浸式模式

Android 启动屏幕上的沉浸式模式,android,splash-screen,statusbar,Android,Splash Screen,Statusbar,我正在尝试实现一个占用整个屏幕的启动屏幕。因此,状态栏需要隐藏,但仅在启动屏幕期间隐藏。 现在,启动屏幕显示,但状态栏仍然显示。 我尝试了这种方法,但没有成功: public class LaunchScreen extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInsta

我正在尝试实现一个占用整个屏幕的启动屏幕。因此,状态栏需要隐藏,但仅在启动屏幕期间隐藏。 现在,启动屏幕显示,但状态栏仍然显示。 我尝试了这种方法,但没有成功:

public class LaunchScreen extends AppCompatActivity {

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

        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 // hide nav bar
                        | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
                        | View.SYSTEM_UI_FLAG_IMMERSIVE);

        startActivity(new Intent(LaunchScreen.this, MainActivity.class));
        finish();
    }
}
这是我的启动资源文件:

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
    <item name="android:windowBackground">@drawable/launch_screen</item>
</style>

@可拖动/启动屏幕
启动_screen.xml:

<item android:drawable="@color/colorPrimary" />
<item>
    <bitmap
        android:gravity="center"
        android:src="@mipmap/ic_launcher" />
</item>


清单文件:

    <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <activity
        android:name=".LaunchScreen"
        android:theme="@style/SplashTheme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity android:name=".MainActivity" />


非常感谢您的帮助

如果有人觉得这很有用,我在样式文件中添加了以下几行:

 <style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowBackground">@drawable/launch_screen</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

现在它就像一个魅力

您可以使其透明,并在下面显示您的飞溅图像it@AhmedAbd-Elmeged我可以使什么部分透明?这是你想要的形状吗?如果是,我将回答问题question@AhmedAbd-Elmeged答案是肯定和否定。我看到你的背景在整个屏幕上呈现,这就是我想要的,但我根本不想在顶部(状态栏)显示时间或所有通知图标。
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 // hide nav bar
                    | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
                    | View.SYSTEM_UI_FLAG_IMMERSIVE);