Android 白色材料外形可拆卸,在标高处为灰色

Android 白色材料外形可拆卸,在标高处为灰色,android,user-interface,kotlin,material-components-android,Android,User Interface,Kotlin,Material Components Android,我目前有一个FrameLayout,初始化时在其init函数中包含以下代码 val bgDrawable = MaterialShapeDrawable.createWithElevationOverlay(context).apply { fillColor = ColorStateList.valueOf(Color.WHITE) } ViewCompat.setBackground(th

我目前有一个FrameLayout,初始化时在其init函数中包含以下代码

            val bgDrawable = MaterialShapeDrawable.createWithElevationOverlay(context).apply {
                fillColor = ColorStateList.valueOf(Color.WHITE)
            }
            ViewCompat.setBackground(this, bgDrawable)
当标高为0时,背景将正确渲染为白色

但是,当我将标高设置为大于0时,背景将变为灰色

我尝试过的一些方法是将色调设置为白色,但这似乎消除了
materialshapedravable

目标: 我只想要一个白色的MaterialShapedRavable背景值在
框架布局上,当标高>0时,要在立面阴影保持不变的情况下保持白色,这取决于颜色,并且仅当当前主题的属性
true
,并且
背景颜色
填充颜色
)与主题的表面颜色(
颜色表面
属性)匹配时才会发生这种情况

如果要避免这种行为,可以在应用程序主题中设置:

<item name="elevationOverlayEnabled">false</item>
false
在默认情况下,此属性为
true
的暗模式下,以分词方式检查应用程序主题