小编Vil*_*ero的帖子

如何在闪屏资源中使用 Jetpack Compose 主题的背景颜色?

我想使用 Jetpack compose Material 主题背景颜色而不是 XML 资源文件中的硬编码值。有没有办法做到这一点?我找到了一个答案,但相反如何在 Jetpack Compose 中直接使用颜色资源?

我有一个用于启动屏幕的资源文件,

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.App.Starting" parent="Theme.SplashScreen">
        <item name="windowSplashScreenBackground">@color/white</item>
        <item name="windowSplashScreenAnimatedIcon">@drawable/ic_baseline_compress_24</item>
        <item name="postSplashScreenTheme">@style/Theme.DailyTasks</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西,

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.App.Starting" parent="Theme.SplashScreen">
        <item name="windowSplashScreenBackground">androidx.compose.material.MaterialTheme.background</item>
        <item name="windowSplashScreenAnimatedIcon">@drawable/ic_baseline_compress_24</item>
        <item name="postSplashScreenTheme">@style/Theme.DailyTasks</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

我想这样做,以便当我的应用程序的主题处于深色模式时,启动屏幕的背景颜色将与我的应用程序的背景颜色相同,而不是在我的资源文件中定义的硬编码@color/white 。

android splash-screen kotlin android-jetpack-compose android-splashscreen

6
推荐指数
0
解决办法
675
查看次数