我想在用kotlin单击Android中的按钮后更改背景
我想单击按钮后更改背景
var bm : Button = messeg bm . setOnClickListener { bm . background = R.color.green }
错误日志:
错误:(35,31)类型不匹配:推断类型是Int,但可绘制! 预期错误:任务':app:compileDebugKotlin'的执行失败。
编译错误。 查看日志了解更多详情
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)