0

当我试图强制NavigationBar成为MaterialTheme.colorScheme.surface颜色时(参见材料 3 指南),应用程序的背景颜色和颜色NavigationBar不同。示例:颜色为NavigationBar#f1edf7但背景颜色为#fffbfe。背景应用颜色MaterialTheme.colorScheme.surface也是。

导航栏

4

1 回答 1

1

材料设计3中有一个东西tonalElevation。相同的“基础”颜色在不同的色调高度不同。默认情况下,Surface 的色调高度为 0dp,这意味着按原样使用背景颜色。NavigationBar具有色调高度 3dp,它会稍微改变颜色。如果您想强制NavigationBar为表面颜色,请将其色调高度更改为 0。

看到这个:https ://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/ColorScheme.kt;l =460?q=surfaceColorAtElevation&sq=

于 2022-02-01T16:34:21.280 回答