как сделать обработчик события клика на кнопку?

как сделать обработчик коликания на кнопку? Я в МейнАктивити.КТ пишу: такой обработчик

private class MyWebViewClient : WebViewClient() {

    private class MyWebViewClient : WebViewClient() {

        override fun shouldOverrideUrlLoading(view: WebView?, url: String?): Boolean {
            if (Uri.parse(url).host == "www.example.com") {
                // This is your website, so don't override. Let your WebView load
                // the page.
                return false
            }
            // Otherwise, the link isn't for a page on your site, so launch another
            // Activity that handles URLs.
            //  Intent(Intent.ACTION_VIEW, Uri.parse(url)).apply {
            //     startActivity(this)
            // }
            return true
        }
    }


}

class MainActivity : AppCompatActivity() {

    private lateinit var binding: ActivityMainBinding


    public fun onClickMyButton(any: Any, function: () -> Unit): Any {


            setContentView(R.layout.fragment_setting)

            val button = findViewById<Button>(R.id.buttonSave)
            button.setOnClickListener {
                // Code here executes on main thread after user presses button
                Toast.makeText(this@MainActivity, "Заkla kla kla  ", Toast.LENGTH_LONG).show()
            }

return true;
    }

ПРи нажатии на кнопку (кнопке при коике поставил что делать) - вылетает из приложения/ При этом этот код я создаю в мейнАктивити, а кнопка у меня в лаЙауте FragmentSettings. Я же должен вышеуказанный код помещать в МейнАктивити? В лайауте где расположена кнопка (обработчик коликов по которой я хочу реализовать) - указано tools:context=".ui.home.HomeFragment"> Значит ли это что я должен писать обработчик кнопки строго в HomeFragment.kt ?

Если создать в лайауте FragmentSettings.xml такой код: tools:context=".ui.home.SettingFragment"> и затем в классе SettingFragment пропмисать выше описанный код, то ругается на: setContentView - красным светит и красным findViewById светит. Красным не светит в мейнАктивити. Но в мейн активити при нажатии на кнопку Вылет из приложения

Даже еслит прописываешь лайауте в FragmentSettings.xml tools:context=".ui.home.SettingFragment"> и потом в классе SettingFragment.kt создаешь пустую функцию без кода внутри , то все равно вылетает приложение. (для кнопки установил в визульаном редакторе что ей делать, но в выпадающем списке эта функция не появляется)


Ответы (1 шт):

Автор решения: Юрий GeneralAnabolik

слушатель на кнопку, получилось:

 findViewById<Button>(R.id.buttonSave)
                        .setOnClickListener{
                            Toast.makeText(this@MainActivity, "ahahahhaahha ", Toast.LENGTH_LONG).show()
                            setContentView(R.layout.activity_main)
                        }

→ Ссылка