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外正常效果:

- 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
相关产品推荐
相关产品推荐

