我想在点击按钮后改变背景
var bm : Button = messeg
bm . setOnClickListener {
bm . background = R.color.green
}
错误日志:
Error:(35, 31) Type mismatch: inferred type is Int but Drawable! was expected Error:Execution failed for task ':app:compileDebugKotlin'.
Compilation error. See log for more details
最佳答案
background
需要一个 Drawable
,但您传递的是颜色资源。
- 您可以使用
setBackgroundColor
来设置颜色资源:
bm.setBackgroundColor(R.color.green)
setBackgroundResource
可用于设置可绘制资源:
bm.setBackgroundResource(R.drawable.green_resource)
background
属性可用于设置可绘制对象:
bm.background = ContextCompat.getDrawable(context, R.drawable.green_resource)
关于android - 我想在使用 kotlin 在 android 中单击 Button 后更改背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45893416/