Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在Kotlin上为按钮设置背景色?_Android_Kotlin_Button_Android Button - Fatal编程技术网

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>