Android 当子活动自身重新启动时,将数据从子活动发送回MainActivity(onActivityResult)
我正在启动一个名为ChildActivity from ParentActivity的活动,名为startActivityForResult()。 现在,在子活动中,我有不同的功能,需要重新启动活动(ChildActivity)。我正在像这样重新启动活动Android 当子活动自身重新启动时,将数据从子活动发送回MainActivity(onActivityResult),android,Android,我正在启动一个名为ChildActivity from ParentActivity的活动,名为startActivityForResult()。 现在,在子活动中,我有不同的功能,需要重新启动活动(ChildActivity)。我正在像这样重新启动活动 Intent intent = getIntent(); startActivityForResult(intent, CODE); finish(); 而且还加入了儿童活动 @Override protected void onActivi
Intent intent = getIntent();
startActivityForResult(intent, CODE);
finish();
而且还加入了儿童活动
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode == RESULT_OK && requestCode == CODE)
super.onActivityResult(requestCode, resultCode, data);
}
但是无论如何,我只得到一个ParentActivity的结果,当ChildActivity重新启动时,result\u被取消。在ChildActivity重新启动后,我无法收到任何进一步的结果
我怎样才能得到进一步的结果
问候,,
pradeep_ch.如果确实需要重新启动此活动,请从父活动重新启动它。在onActivityResult中,您可以处理重新启动。可能您的意思是重新启动活动是以android方式调用onResume。只要在那里添加一个标志,如果活动有这种标志,它将加载什么。如果要重新加载活动,只需在任意位置调用onResume()
@Override
protected void onResume() {
super.onResume();
if (flag == SOMETHING) {
// do something or load views
} else {
// do something or load views
}
}
您需要重新启动活动的目的是什么?从子活动调用startActivityForResult后,它是已打开活动的父活动,因此将调用已完成活动的ActivityResult。我的建议是不要重新启动活动。这不是Android的方式;)基本上,ChildActivity用于录制视频,当用户单击flip\u camera按钮切换摄像头时,以及当摄像头切换需要重新启动活动时,它具有flip camera选项。@pradeep\u ch:查看此处切换摄像头,不重新启动您的活动我正在从父活动重新启动活动,谢谢