在Andriod Studio中使用startActivityForResult()方法来启动一个新的Activity,并在这个新的Activity中执行一些操作后返回结果,在回到原Activity中需要在onActivityResult()方法中处理返回的结果。以下是一个包含代码示例的解决方案:
在原Activity中调用startActivityForResult()方法:
val intent = Intent(this, NewActivity::class.java)
startActivityForResult(intent, REQUEST_CODE)
在NewActivity中设置返回结果:
val resultIntent = Intent()
resultIntent.putExtra("result_key", "result_value")
setResult(Activity.RESULT_OK, resultIntent)
finish()
在原Activity中处理返回结果的方法:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if(requestCode == REQUEST_CODE && resultCode == Activity.RESULT_OK) {
val resultValue = data?.getStringExtra("result_key")
// process the result value here
}
}