无法在XML中更改按钮的背景颜色.Android studio

问题描述 投票:0回答:18

Android studio screenshot

我创建了

TableLayout
然后是按钮。按钮的颜色自动设置为紫色。所以我现在无法改变它们。 这是我第一次来这里。

android kotlin button colors tablelayout
18个回答
46
投票

不要使用任何其他用途

<androidx.appcompat.widget.AppCompatButton
<!-- attributes-->
/>

而不是一个

<Button
<!--attributes-->
/>

一切都会顺利进行。

快乐编码。


29
投票

由于默认背景色调颜色,它是紫色的。 你可以 : 更改 **app:backgroundTint ** 代替 android:backgroundColor 。在这种情况下,您的背景色调将代替背景颜色出现

添加

app:backgroundTint="@null"

然后你的背景颜色就会出现。

您可以在 android 清单中更改默认主题。 例如:

android:theme="@style/Theme.AppCompat"

 android:theme="@style/Theme.AppCompat.NoActionBar"

20
投票
在最新的 Android Studio 版本中,Android 默认颜色为

Purple。 要更改 Button 的颜色,您需要在 XML 中添加一行代码,即

app:backgroundTint="@color/red"
仅此而已!


6
投票
添加属性:

app:backgroundTint="@null"


    


5
投票
您可能正在使用

targetSdkVersion

 30

解决方案:更改theme.xml样式从

<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    

2
投票
我遇到了同样的问题,我几乎尝试了所有方法,但没有任何效果! Android Studio 4.1.1 似乎发生了一些变化?我不知道。

[我的解决方案] 所以我使用 TextView 而不是 Button 并设置自定义背景,它对我有用:/希望这有帮助!

enter image description here


2
投票

您可以从设计编辑器更改样式,如下图所示

enter image description here


2
投票
正如其他一些人提到的,你的主题可能会覆盖你的按钮颜色

materialButtonStyle 特别是

你可以

    将主题更改为
  • Theme.AppCompat.DayNight.NoActionBar (或类似的内容)
  • 或覆盖
  • materialButtonStyle参数
<resources xmlns:tools="http://schemas.android.com/tools"> <!-- Base application theme. --> <style name="MyButtonStyle" parent="TextAppearance.AppCompat.Button" /> <style name="Theme.GradientTest" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> <item name="materialButtonStyle">@style/MyButtonStyle</item> <!-- Other params here. --> </style>
    

1
投票

enter image description here

您可以使用此按钮

<androidx.appcompat.widget.AppCompatButton>
    

1
投票
从按钮 xml 中删除此内容

android:background="@color/white"
并将其替换为

android:backgroundTint="@color/white"
    

0
投票
这真的很容易。您应该在 XML 中创建一个形状。将背景设置为该形状,然后使用该 XML 设置背景。


0
投票
它与“com.google.android.material:material:1.2.0-alpha06”的更新配合得很好

以编程方式执行:myButton.background = ContextCompat.getDrawable(requireContext(), R.drawable.my_background)

这两个选项,您都需要将 app:backgroundTint 属性设置为 null

应用程序:backgroundTint =“@null”

检查下一个链接:

https://github.com/material-components/material-components-android/issues/889


0
投票
转到 res-values-themes-themes 你会发现两个主题。一是当黑暗模式被激活时。去换个深色模式的吧。可能发生的情况是您对深色模式有不同的风格。 我真的希望它很容易理解,因为英语不是我的母语


0
投票
解决问题。在 xml 中将“android:background=”@android:color/black”中的背景替换为backgroundTint“android:backgroundTint=”@android:color/black”


0
投票
我找到了解决办法。 在按钮标签内,使用

android:backgroundTint="#ccc"
将上面行中的 #ccc 替换为您喜欢的颜色的十六进制代码。这应该可以解决问题。


0
投票
直接使用hexcode来改变背景

android:backgroundTint="#A9A9A9"


    


0
投票
在按钮点击监听器中的按钮上使用函数

setBackgroundColor()

 


0
投票
<androidx.appcompat.widget.AppCompatButton

/>

这个在这里起作用了,别管背景色调, 然后为按钮属性创建一个 xml 文件并使用如下属性 android:background="@drawable/rounded_button" ,在本例中我的属性按钮文件是 rounded_button.xml 。

© www.soinside.com 2019 - 2024. All rights reserved.