Quiero cambiar el background después de hacer clic en Botón en Android con Kotlin

Quiero cambiar el background después de hacer clic en el button

var bm : Button = messeg bm . setOnClickListener { bm . background = R.color.green } 

Registro de errores:

Error: (35, 31) Tipo de discrepancia: ¡el tipo inferido es Int pero extraíble! se esperaba Error: ejecución fallida para la tarea ': app: compileDebugKotlin'.

Error de compilation. Ver logging para más detalles

Solutions Collecting From Web of "Quiero cambiar el background después de hacer clic en Botón en Android con Kotlin"

background requiere Drawable , pero está pasando un recurso de color.

  1. Puede usar setBackgroundColor para establecer un recurso de color:

bm.setBackgroundColor(R.color.green)

  1. setBackgroundResource se puede usar para establecer un recurso dibujable:

bm.setBackgroundResource(R.drawable.green_resource)

  1. background propiedad de background se puede usar para establecer un dibujable:

bm.background = ContextCompat.getDrawable(context, R.drawable.green_resource)