You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Material3 Chip在BottomSheet中未选中状态背景色异常求助

问题:BottomSheet内Material3 Filter Chip未选中背景色异常

现象

  • 在模态BottomSheet外使用Filter Chip时显示正常(未选中背景色符合预期)
  • 将Chip放入BottomSheet后,未选中状态的背景色发生异常变化

Chip代码

<com.google.android.material.chip.Chip
    android:id="@+id/income_type_chip"
    android:layout_width="0dp"
    style="@style/Widget.Material3.Chip.Filter"
    android:layout_height="wrap_content"
    android:layout_marginTop="24dp"
    android:layout_marginEnd="16dp"
    android:layout_marginStart="16dp"
    android:checkable="true"
    android:enabled="true"
    android:text="@string/income_label"
    app:layout_constraintEnd_toStartOf="@+id/expense_type_chip"
    app:layout_constraintHorizontal_bias="0.5"
    app:layout_constraintHorizontal_chainStyle="spread_inside"
    app:layout_constraintStart_toEndOf="@+id/category_type_label"
    app:layout_constraintTop_toBottomOf="@+id/category_name_input_layout" />

显示效果

  • BottomSheet外正常效果:
    Chip在BottomSheet外的显示效果
  • BottomSheet内异常效果:
    Chip在BottomSheet内的显示效果

已尝试的无效方案

  • 为Chip设置自定义选择器Drawable
  • 按照MDC Android的Chip指南覆盖主题颜色样式

自定义BottomSheet配置

BottomSheet样式

<style name="ModalBottomSheetDialog" parent="Widget.Material3.BottomSheet.Modal">
    <item name="backgroundTint">#fff</item>
</style>

BottomSheet主题

<style name="CustomBottomSheetDialogTheme" parent="ThemeOverlay.Material3.BottomSheetDialog">
    <item name="bottomSheetStyle">@style/ModalBottomSheetDialog</item>
</style>

应用主题配置

<style name="Theme.MoneyMonitor" parent="Theme.Material3.Light.NoActionBar">
...
    <item name="bottomSheetDialogTheme">@style/CustomBottomSheetDialogTheme</item>
</style>

需求

希望BottomSheet内的Chip未选中状态背景色与外部保持一致

内容的提问来源于stack exchange,提问作者Prem Thakur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 18:01:16