1
<com.google.android.material.button.MaterialButton
    style="@style/Widget.MaterialComponents.Button.OutlinedButton"
    app:strokeColor="@color/black"
    app:strokeWidth="1dp"
    app:backgroundTint="@color/white"
    android:id="@+id/button_clear"
    android:layout_width="64dp"
    android:layout_height="64dp"
    android:text="C"
    app:layout_constraintEnd_toStartOf="@+id/button_sign"
    app:layout_constraintHorizontal_bias="0.5"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="@+id/button_sign" />

我正在构建一个计算器应用程序,所以我希望我的数字按钮具有与我的操作按钮不同的背景颜色,并且我的等号按钮具有不同的背景。

将其应用于一组按钮的最有效方法是什么?

我是 Android 开发的新手。

4

1 回答 1

1

只需定义一个默认样式:

<style name="CalculatorButton" parent="@style/Widget.MaterialComponents.Button.OutlinedButton">
        <item name="strokeColor">@color/....</item>
        <item name="strokeWidth">1dp</item>
        <item name="backgroundTint">@color/...</item>
</style>

然后你可以定义其他继承默认值的。就像是:

<style name="CalculatorButton.Number">
    <item name="backgroundTint">@color/...</item>
</style>

<style name="CalculatorButton.Equal">
    <item name="backgroundTint">@color/...</item>
</style>

然后在你Button只是参考正确的风格:

<com.google.android.material.button.MaterialButton
    style="@style/CalculatorButton.Number"
    ..>
于 2020-06-11T15:30:18.497 回答