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 

你的问题是,你在click监听器中定义了一个函数,你没有调用它。

您的原始代码:

 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) }