Compara una vista de text con una string en Kotlin

Intento cambiar una vista de text en mi aplicación de Android cada vez que presiono el button
El problema es que las acciones 'si' no se aplican, como si siempre fuera falso
porqué es eso ?

override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val lol: String = "Hello World!" button.setOnClickListener{ if ( textview.equals(lol)){ textview.setText("yeah")} else textview.setText("Hello World!") }}} 

Kotlin usa == para la comparación de cadenas

https://kotlinlang.org/docs/reference/equality.html

La igualdad estructural es comprobada por la operación == (y su contraparte negada != ).

Además, está tratando de comparar una String con una vista de TextView , son dos types diferentes, por lo que nunca TextView a ser lo mismo. Tratar:

if( textview.text == lol) {...

Finalmente, como consejo, no use nombres de variables como lol en el código que tenga la intención de depurar alguna vez. Puede ser rápido y fácil usar un pequeño nombre de variable, pero si no es descriptivo, vas a tener un mal momento tratando de depurarlo más tarde, tómalo por mi experiencia personal;)