Android 如何在Kotlin上为按钮设置背景色?
我一直在寻找如何改变按钮背景的颜色,我发现最接近的是使用Android 如何在Kotlin上为按钮设置背景色?,android,kotlin,button,android-button,Android,Kotlin,Button,Android Button,我一直在寻找如何改变按钮背景的颜色,我发现最接近的是使用 view.setBackgroundColor(ContextCompat.getColor(this,R.color.white)) 但是当我这样做时,按钮不会变成白色,而是变成紫色?这就像按钮的默认颜色,我真的不知道该怎么做 感谢您的帮助,如果我没有回复,我很抱歉:(我不知道如何很好地使用此页面在这些帮助下,您可以在运行时轻松更改颜色 //在Javabtn.setBackgroundColor(btn.getContext().get
view.setBackgroundColor(ContextCompat.getColor(this,R.color.white))
但是当我这样做时,按钮不会变成白色,而是变成紫色?这就像按钮的默认颜色,我真的不知道该怎么做
感谢您的帮助,如果我没有回复,我很抱歉:(我不知道如何很好地使用此页面在这些帮助下,您可以在运行时轻松更改颜色 //在Javabtn.setBackgroundColor(btn.getContext().getResources().getColor(R.color.red)) 在科特林
btn.setBackgroundColor(this.getResources().getColor(R.color.red));
或
在RGB的帮助下:0xAARGGBB
btn.setBackgroundColor(0xFFFF0000);
使用
setbackgroundtinlist
而不是setBackgroundColor
比如:
button.backgroundTintList = ContextCompat.getColorStateList(this,R.color.xxxx);
您可以使用简单的颜色:
<color name="red600">#e53935</color>
#e53935
或者最好选择一个选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="?attr/colorPrimary" android:state_enabled="true"/>
<item android:alpha="0.12" android:color="?attr/colorOnSurface"/>
</selector>
默认背景色由主题中的
colorPrimary
属性定义。您好,谢谢您的回答:)但我试过了,我认为这些行适用于java,但不适用于kotlin:(或者我错了吗?我还在学习现在我向你提到如何在kotlin中更改颜色。你好,谢谢你的回答:)按钮选择器是什么意思?谢谢!你可以使用简单的颜色或选择器。检查@MeowYOU我已经用一个例子更新了答案
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="?attr/colorPrimary" android:state_enabled="true"/>
<item android:alpha="0.12" android:color="?attr/colorOnSurface"/>
</selector>