Android:将可绘制对象添加到 styles.xml 时出现 Resources$NotFoundException

Android: Resources$NotFoundException at adding drawable to styles.xml

我有这个splash_screen.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:drawable="@color/colorPrimary"/>

    <item
        android:gravity="center"
        android:src="@mipmap/ic_launcher"/>
</layer-list>

然后我想将它作为 <item> 添加到 styles.xml:

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

但这抛出:

Caused by: android.content.res.Resources$NotFoundException: File res/drawable/splash_screen.xml from drawable resource ID #0x7f070099

当我尝试时:

<item name="android:windowBackground">@color/colorPrimary</item>

我的代码工作正常并以 colorPrimary 显示屏幕。

我该如何解决?

我尝试重建、清理、重新启动 Android Studio 和每个 post SO。没有任何帮助。

编辑

splash_screen.xml 肯定 在 drawable 文件夹中。

Android Studio 正在建议文件。

我的可绘制文件夹:

解决方案:

     <item>
          <bitmap
                 android:gravity="center"
                android:src="@drawable/your_image" />
      </item>

在您的代码中添加 @drawable/your_image 而不是 @mipmap/your_image。

您必须像在第一个项目中那样在项目 标签 中使用 android:drawable 而不是 android:src

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:drawable="@color/colorPrimary"/>

    <item
        android:gravity="center"
        android:drawable="@mipmap/ic_launcher"/>
</layer-list>

除此之外,总是post异常的完整堆栈跟踪。实际异常清楚地表明问题如下:

Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line 6: tag requires a 'drawable' attribute or child tag defining a drawable