【问题标题】:How do I change the background of a button in android?如何更改android中按钮的背景?
【发布时间】:2021-02-07 07:37:32
【问题描述】:

这是按钮现在的样子:

android:background= "@color/white" 不会改变任何东西。

代码:

 <Button
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"
            android:text="Button"
            android:background="@color/white"/>

【问题讨论】:

  • android:background="@drawable/button_selector"

标签: java android android-studio android-button


【解决方案1】:

您是否在colors.xml 中为白色添加了价值? 如果没有打开colors.xml并添加

&lt;color name="white"&gt;#FFFFFF&lt;/color&gt;

这里有完整的解释 https://stackoverflow.com/a/2749027/7174681

【讨论】:

  • 是的,我在 file.xml #FFFFFF 中添加了颜色。还是不行。
【解决方案2】:

使用app:backgroundTint="#FFFFFF"

如果您想使用选择器,您需要将android:background="@drawable/your_button_selector_id" 作为按钮背景,选择器才能工作。

选择器:

   <selector xmlns:android="schemas.android.com/apk/res/android">

   <item android:drawable="@color/white" android:state_selected="true" />

 <item android:drawable="@color/black" android:state_selected="false" /> </selector>

【讨论】:

  • 是的,它有效。但是 button_selector 不起作用。
  • schemas.android.com/apk/res/android">
  • 我都按照你说的做了,可惜没用((
【解决方案3】:

由于您使用的是颜色,因此只需使用 app:backgroundTint 属性:

<Button
    app:backgroundTint="@color/white"/>

如果您只需要带有笔画的圆角,则不需要可绘制对象。

供它使用:

    <com.google.android.material.button.MaterialButton
        app:cornerRadius="16dp"
        app:backgroundTint="@color/white"
        app:strokeColor="@color/black"
        android:textColor="@color/black"
        app:strokeWidth="2dp" />

【讨论】:

  • 谢谢,我知道背景属性不起作用?
  • @АнтонКобелев 如果需要,您可以使用它。在这种情况下使用app:backgroundTint="@null"
猜你喜欢
  • 1970-01-01
  • 2013-09-07
  • 1970-01-01
  • 2013-08-28
  • 2021-03-18
  • 1970-01-01
  • 2021-07-05
  • 2017-12-29
  • 2014-07-15
相关资源
最近更新 更多