Cómo pasar los valores de actividad a otra actividad en kotlin

Buenos dias a todos,

Como estoy aprendiendo Kotlin para el desarrollo de Android, ahora estoy probando los progtwigs básicos como hola mundo y cómo navegar de una actividad a otra actividad, no hay ningún problema en este

Mi preocupación es Cuando me muevo de una actividad a otra actividad, funciona bien, pero no sé cómo pasar los valores entre las actividades

Me cansé de establecer los valores en una actividad y recuperarlos en otra actividad, no funciona

Por favor, vea el fragment de código a continuación

Esta es mi actividad principal, donde tomo el nombre de usuario y la contraseña desde el text de edición y la configuration hasta la intención

class MainActivity : AppCompatActivity() { val userName = null val password = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) button.setOnClickListener { val intent = Intent(this@MainActivity,SecondActivity::class.java); var userName = username.textø var password = password_field.text intent.putExtra("Username", userName) intent.putExtra("Password", password) startActivity(intent); } } 

}

Esta es mi segunda actividad donde tengo que recibir valores de la actividad principal

class SecondActivity: AppCompatActivity () {

 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_second) var strUser: String = intent.getStringExtra("Username") var strPassword: String = intent.getStringExtra("Password") user_name.setText("Seelan") passwor_print.setText("Seelan") } 

}

Por favor, guíame sobre cómo hacer esto, ya sea si tengo otra forma de hacerlo en kotlin si no es por intención

Gracias de antemano

Estoy en el mobile, debes probar por ti mismo.

Intenta hacer una CharSequence de caracteres CharSequence a una String en MainActivity , has puesto una CharSequence lugar de una String , por ejemplo:

 var userName = username.text.toString() var password = password_field.text.toString() 

Simplemente puede usar los bashs y el package para enviar datos de una actividad a otra.

 val intent = Intent(this@OneActivity,TwoActivity::class.java); intent.putExtra("username", userName) startActivity(intent); 

En Kotlin, puede pasar los datos simplemente usando los Intents. Puede poner sus datos directamente en el bash o puede escribir esos datos en un package y enviar ese package a otra actividad con la intención.

 val intent = Intent(this@HomeActivity,ProfileActivity::class.java); intent.putExtra("profileName", "John Doe") var b = Bundle() b.putBoolean("isActive", true) intent.putExtras(b) startActivity(intent); 
  • Kotlinx inyecta vista desde el layout incorrecto
  • Kotlin RC NoClassDefFoundError
  • registerReceiver () muestra error por método sobrecargado
  • Error de configuration automática del complemento kotlin-gradle
  • Estudio de Android 3: Tiempo de ejecución de Kotlin desactualizado
  • Dagger2 inyecta un presentador en un error de actividad de Kotlin
  • El conflicto de las properties sintéticas de Kotlin
  • Clase Kotlin no encontrada
  • Comience un proyecto con la ayuda de Kotlin en Android
  • ¿Insertar o agregar un elemento en ArrayList en Kotlin?
  • Los methods de logging de Anko no se pueden resolver