У вас в активности есть метод onCreate()
. Туда можно вынести любой метод который вы хотите запускать автоматически без действия пользователя:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
someFunction()
}
если же вы хотите вернуть какие-то данные с второй активности на первую, то можно воспользоваться StartActivityForResult
:
fun openSecondActivityForResult() {
val intent = Intent(this, SecondActivity::class.java)
activityResultLauncher.launch(intent)
}
// We can do the assignment inside onAttach or onCreate
var activityResultLauncher = registerForActivityResult(StartActivityForResult()) { result ->
// There are no request codes
if (result.resultCode == resultCode1 && result.data != null) {
// Do operations
} else if (result.resultCode == resultCode2) {
// Do operations
}
}
и на второй активности когда все действия завершены, просто вызываем передачу информации:
val intent = Intent()
setResult(FirstActivity.resultCode1, intent)
finish()