MaterialButton 样式被覆盖,如何保留它?

MaterialButton style being overridden, how do I keep it?

我正在尝试在 BottomSheetDialog 中使用 MaterialButtonToggleGroup。但是按钮的样式被我用于 BottomSheet

的当前主题覆盖

在常规片段中:

使用属性

style="?attr/materialButtonOutlinedStyle"

我的 Material Button 上有这个蓝色轮廓 在我的 ToggleGroup

里面
<com.google.android.material.button.MaterialButtonToggleGroup
        android:id="@+id/toggle_group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:checkedButton="@+id/btnOne"
        app:layout_constraintEnd_toEndOf="parent"
        android:layout_marginEnd="16dp"
        app:selectionRequired="true"
        app:singleSelection="true">

        <com.google.android.material.button.MaterialButton
            android:id="@+id/btnOne"
            style="?attr/materialButtonOutlinedStyle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button 1"
            android:minHeight="0dp"
            android:textSize="12sp"/>

        <com.google.android.material.button.MaterialButton
            android:id="@+id/btnTwo"
            style="?attr/materialButtonOutlinedStyle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:minHeight="0dp"
            android:text="Button 2"
            android:textSize="12sp"/>


    </com.google.android.material.button.MaterialButtonToggleGroup>

但是在我的 BottomSheet 中使用它时,我得到了这个:

底部的主题 sheet 我正在使用:

<style name="Theme.TestApp" parent="Theme.MaterialComponents.DayNight.NoActionBar">
        ...
        
        <item name="bottomSheetDialogTheme">@style/AppBottomSheetDialogTheme</item>
</style>
    <style name="AppBottomSheetDialogTheme" parent="Theme.Design.Light.BottomSheetDialog">
        <item name="bottomSheetStyle">@style/BottomSheetRoundedCorners</item>
    </style>

    <style name="BottomSheetRoundedCorners" parent="Widget.Design.BottomSheet.Modal">
        <item name="android:background">@drawable/bgr_bottomsheet_round_corners</item>
    </style>

如何保持风格

style="?attr/materialButtonOutlinedStyle"

在使用 BottomSheet 的主题时为 MaterialButton

编辑:______________________________

我试过添加

<item name="materialButtonStyle">@style/Widget.MaterialComponents.Button.OutlinedButton</item> 我的 BottomSheet 的主题,但它没有任何作用。

<style name="AppBottomSheetDialogTheme" parent="Theme.Design.Light.BottomSheetDialog">
        <item name="bottomSheetStyle">@style/BottomSheetRoundedCorners</item>
        <item name="materialButtonStyle">@style/Widget.MaterialComponents.Button.OutlinedButton</item>
    </style>

也试过

<item name="materialButtonStyle">?attr/materialButtonOutlinedStyle</item>

你可以使用这个主题:

<style name="BottomSheet" parent="Theme.MaterialComponents.DayNight.BottomSheetDialog"/>

<style name="Theme.TestApp" parent="Theme.MaterialComponents.DayNight.NoActionBar">
    ...
    
    <item name="bottomSheetDialogTheme">@style/BottomSheet</item>

请勿使用 THEME.DESIGN.LIGHT