setOnClickListener 没有显示 Toast 或执行 Intent

setOnClickListener is not showing the Toast or doing the Intent

这是在 Kotlin 中,无论我尝试什么它似乎都不起作用它只是一个带有点击监听器的按钮。它的功能是带我去另一个activity,我试着敬酒但也没有显示。我试过不使用该功能,但也没有用。我们可以将此方法用于文本视图吗?我是 Kotlin 的新手,对我来说很轻松...

这是代码

  val startButton = binding.loginButton

startButton.setOnClickListener {
    fun crtUser() {
        Toast.makeText(this, "It's Working!", Toast.LENGTH_LONG).show()

        val intent = Intent(this@LoginActivity, SignupActivity::class.java)
        startActivity(intent)
    }
        crtUser()
    }
}

我在Intent后面也用了finish(),结果崩溃了

请不要使用此语法,它并非无效,但改进它会让您和其他开发人员更快、更轻松地理解正在发生的事情:)。从点击事件触发函数如下:

fun onCreateOrOtherMethod() {
    binding.button.setOnClickListener {
        createUser()
    }
}

然后您可以将 createUser() 作为当前 class:

的内部方法
private fun createUser() {
        Toast.makeText(this, "It's Working!", Toast.LENGTH_LONG).show()
        val intent = Intent(this@LoginActivity, SignupActivity::class.java)
        startActivity(intent)
}

小提示:不要缩写方法名称,如果需要,您可以使用长名称,只要它改进了代码的语义。

如果崩溃,请附上异常堆栈跟踪:D

我刚改完就可以用了

setContentView(R.layout.login_activity)

对此

setContentView(binding.root)

知道为什么吗?