¿Cómo crear un button en Kotlin que abre una nueva actividad (Android Studio)?

Hola. Estoy creando una aplicación con Android Studio y el idioma de Kotlin, y tengo problemas para que mi button abra una nueva actividad. Tengo el button creado en mi file xml pero no puedo encontrar la syntax KOTLIN de cómo declararlo en MainActivity.kt y cómo crear el OnClicklistener que me llevaría a la nueva actividad. Tengo la nueva actividad definida en el manifiesto, así que creo que solo necesito ayuda con la syntax para cambiar realmente de MainActivity.kt a secondActivity.kt. Cualquier ayuda es apreciada.

Puede agregar el detector de events onclick como se muestra a continuación.

  button1.setOnClickListener(object: View.OnClickListener { override fun onClick(view: View): Unit { // Handler code here. val intent = Intent(context, DestActivity::class.java); startActivity(intent); } }) 

O puede usar forma simplificada

  button1.setOnClickListener { // Handler code here. val intent = Intent(context, DestActivity::class.java) startActivity(intent); } 

Botón en el file xml de layout

  <Button android:id="@+id/btn_start_new_activity" android:text="New Activity" android:layout_width="wrap_content" android:layout_height="wrap_content" /> 

Por declararlo en el file de actividad de Kotlin

 var btn_new_activity = findViewById(R.id.btn_start_new_activity) as Button 

Establezca Onclicklistener en el button, para iniciar una nueva actividad cuando se hace clic en el button

  btn_new_activity.setOnClickListener { val intent = Intent(context, NewActivity::class.java) startActivity(intent); } 

Te recomiendo que uses la extensión Anko para Kotlin https://github.com/Kotlin/anko . Te permite usar la intención (y más otras cosas) de la manera más corta. En tu caso, será:

 button { onClick { startActivity<SecondActivity>() } } 
  • Anulación accidental: las siguientes declaraciones tienen la misma firma de JVM
  • En Kotlin Lenguaje de progtwigción importancia de varargs en términos de usos
  • La biblioteca de Android no puede comstackr kotlin
  • Prueba unitaria de la function de extensión de Kotlin en las classs de Android SDK
  • Clases de Kotlin sin llaves
  • Hacer clic en una vista de text para cambiar el fragment
  • Por qué los numbers que aceptan nulos no son para preservar la identidad
  • La function Kotlin requiere nada, pero se define como un tipo diferente
  • Android Kotlin Extension super calling
  • Extensiones en Kotlin