【问题标题】:Change Color from material outlined button doesn't work从材料轮廓按钮更改颜色不起作用
【发布时间】:2020-10-07 07:07:58
【问题描述】:

我想更改活动切换按钮的颜色。但是仅仅改变了rippleColor就会有所不同。 我希望自定义活动按钮的背景颜色和文本颜色。

<style name="ToggleButtonGroupStyle" parent="Widget.MaterialComponents.Button.OutlinedButton">
            <item name="rippleColor">@color/colorAccent</item>
</style>

在下面的 toggleButtonGroup 中,我从上面使用了这种样式:

         <com.google.android.material.button.MaterialButtonToggleGroup
            android:id="@+id/priority_btn_group"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:layout_alignParentLeft="true"
            app:selectionRequired="true"
            app:singleSelection="true"
            app:checkedButton="@+id/btn_one"
            >

            <com.google.android.material.button.MaterialButton
                android:id="@+id/btn_one"
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="@dimen/priority_btn_width"
                android:layout_height="wrap_content"
                android:shadowColor="@color/project_text"
                android:text="0" />

            <com.google.android.material.button.MaterialButton
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="@dimen/priority_btn_width"
                android:layout_height="wrap_content"
                android:text="!" />

            <com.google.android.material.button.MaterialButton
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="@dimen/priority_btn_width"
                android:layout_height="wrap_content"
                android:text="!!" />

            <com.google.android.material.button.MaterialButton
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:text="!!!" />


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

谁能告诉我这里的问题是什么? 谢谢:)

【问题讨论】:

    标签: android android-button android-theme android-styles material-components-android


    【解决方案1】:

    选中按钮的背景颜色基于 colorPrimary 属性。
    您可以使用:

    <com.google.android.material.button.MaterialButton
        android:id="@+id/btn_one"
        style="?attr/materialButtonOutlinedStyle"
        android:theme="@style/ThemeOverlay.Custom.Button"
    

    与:

    <style name="ThemeOverlay.Custom.Button" parent="">
        <item name="colorPrimary">@color/....</item>
    </style>
    

    或者您可以使用自定义样式:

        <com.google.android.material.button.MaterialButton
            android:id="@+id/btn_one"
            style="@style/ToggleButtonGroupStyle"
    

    与:

    <style name="ToggleButtonGroupStyle" parent="Widget.MaterialComponents.Button.OutlinedButton">
        <item name="backgroundTint">@color/custom_selector</item>
    </style>
    
    
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:color="@color/..." android:state_checked="true"/>  <!-- selected color -->
        <item android:color="@android:color/transparent" android:state_checked="false"/>
    </selector>
    

    【讨论】:

      猜你喜欢
      • 2020-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-21
      • 2022-11-02
      • 2021-08-15
      • 2014-10-12
      • 2021-06-22
      相关资源
      最近更新 更多