[英]OnActivityResult is not called when sending data from fragment to another activity
I send data from fragment to another activity. 我将数据从片段发送到另一个活动。 But onActivityResult in Activity is not called.
但是不会调用Activity中的onActivityResult。 In my fragment i use activity.setResult()
在我的片段中,我使用activity.setResult()
I've tried to use startActivityResult() in my fragment and still doesn't work 我试图在片段中使用startActivityResult(),但仍然无法正常工作
Here is my fragment : 这是我的片段:
private fun menuItemClicked(menu : DaftarMenu.Menu){
val intentMenu = Intent()
intentMenu.putExtra(PartDetailActivity.INTENT, menu)
activity?.setResult(PartDetailActivity.MENU, intentMenu)
activity?.finish()
}
This is my Activity: 这是我的活动:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
Log.i("requestCode MENU", " reqMenu = $requestCode")
if(requestCode == MENU){
val menu = data?.getParcelableExtra<DaftarMenu.Menu>(INTENT) ?: return
Log.i("menuIntent"," menu : ${menu.id}")
val editMenu = EditJumlahPesanan(menu, 1, "")
editList.add(0, editMenu)
rec_edit_quantity.adapter.notifyDataSetChanged()
}
}
Even the first Log is not called. 即使第一个Log也不会被调用。
Please help me to get the data from my fragment 请帮助我从片段中获取数据
In your code, activity?.setResult(PartDetailActivity.MENU, intentMenu)
should be changed to activity?.setResult(Activity.RESULT_OK, intentMenu)
. 在您的代码中,
activity?.setResult(PartDetailActivity.MENU, intentMenu)
应该更改为activity?.setResult(Activity.RESULT_OK, intentMenu)
。
If after this change it still doesn't work properly, be sure to start your activity using startActivityForResult. 如果此更改后仍无法正常工作,请确保使用startActivityForResult开始您的活动。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.