Кнопка Kotlin setOnclickListener не работает

Привет, ребята, у меня проблема при нажатии кнопки

fun mainPage(view: View) { val intent = Intent(applicationContext, MainActivity::class.java) intent.putExtra("input", userText.text.toString()) startActivity(intent) } //second button started in here singupButton.setOnClickListener { fun crtUser (view: View) { val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) } } 

но мои кнопки не работают. Где моя проблема?

Вам не нужно определять объявление функции ( fun ), попробуйте следующее:

 singupButton.setOnClickListener {view -> val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) } 

или просто

 singupButton.setOnClickListener { val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) } 

Это базовый образец

 val myButton = findViewById<Button>(R.id.myButton) as Button //set listener myButton.setOnClickListener { //Action perform when the user clicks on the button. Toast.makeText(this@MainActivity, "You clicked me.", Toast.LENGTH_SHORT).show() } 

Ваша проблема в том, что вы определили функцию в прослушивателе кликов, вы ее не вызывали.

Ваш исходный код:

 singupButton.setOnClickListener { fun crtUser (view: View) { val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) } } 

Вы должны вызвать эту функцию:

 singupButton.setOnClickListener { view -> fun crtUser (view: View) { val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) } crtUser(view) } 

Или не определяйте эту функцию, просто назовите ее:

 singupButton.setOnClickListener { val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) }