启动画面和更改主题有问题吗?

Problem with Splash screen and changing Theme?

我添加了启动画面。如果我在设置片段中通过 AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES) 更改应用程序主题,我将重定向到第一个片段(main\home 片段)。如果我从清单中删除飞溅一切都会好起来的!所以有什么问题?可能是我在创建 splash window 时弄错了吗?我想在更改主题后留在设置片段中。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.***********">

<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/Theme.Todo">
    <activity
        android:name=".SplashScreen"
        android:label="@string/app_name"
        android:theme="@style/splashScreen">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".MainActivity"
        android:theme="@style/Theme.Todo.NoActionBar">
    </activity>
</application>

初始样式:

<style name="splashScreen" parent="Theme.MaterialComponents.DayNight.NoActionBar">
    <item name="android:windowBackground">@drawable/background_splashscreen</item>
    <item name="colorPrimary">@color/primaryColor</item>
    <item name="colorPrimaryDark">@color/primaryColor</item>
    <item name="colorPrimaryVariant">@color/primaryColor</item>
    <item name="colorAccent">@color/primaryColor</item>
    <item name="android:navigationBarColor">@android:color/transparent</item>
</style>

Window 背景:

layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="?attr/colorPrimary"/>
<item
    android:gravity="center"
    android:width="300dp"
    android:height="300dp"
    android:drawable="@drawable/ic_launcher_foreground"/>

</layer-list>

我正在使用

implementation 'androidx.navigation:navigation-fragment-ktx:2.3.1'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.1'

和模板“Navigation Drawer Actyvity”(单个 Activity)

视频: 没有飞溅 here, 飞溅 here

看起来你忘了完成你的飞溅 activity。 https://developer.android.com/reference/android/app/Activity#finish()