如何更改自定义启动画面中的背景颜色?

How to change the background color in a custom made splash screen?

为了删除默认的白色启动画面,我制作了一个自定义主题:

styles.xml

 <style name="AppTheme.SplashTheme">
        <item name="android:windowBackground">@drawable/splash_screen</item>
  </style>

splash_screen.xml

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

<!--<item android:drawable="?colorPrimary" />-->
<item>
    <bitmap
        android:gravity="center"
        android:src="@drawable/wq_logo" />
</item>
</layer-list>

一切正常,但我想更改它的背景颜色。它当前显示紫色背景。我想让它变白。 在此应用程序中,我使用的是抽屉式导航布局。

像这样更改splash_screen.xml

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

<item>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"      
       android:shape="rectangle">
      <solid android:color="@color/grey" />
    </shape>
</item>
<item>
    <bitmap
        android:gravity="center"
        android:src="@drawable/wq_logo" />
</item>

您可以将另一个 item 添加到 layer-list。您只需将背景颜色更改为您喜欢的颜色即可。

就我而言,这个解决方案没有解决问题。为了修复它,我声明了启动画面的背景图像,如下所示:(不要使用位图)

<item android:drawable="@color/colorPrimary" />

<item
    android:drawable="@drawable/ic_launcher"
    android:gravity="center" />