【发布时间】:2014-05-26 08:02:53
【问题描述】:
我正在从 ParentActivity 作为 startActivityForResult() 启动一个名为 ChildActivity 的活动。 现在,在子活动中,我有不同的功能需要重新启动活动(ChildActivity)。我正在重新启动活动,例如
Intent intent = getIntent();
startActivityForResult(intent, CODE);
finish();
并且还添加到了ChildActivity中
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode == RESULT_OK && requestCode == CODE)
super.onActivityResult(requestCode, resultCode, data);
}
但无论如何,当 ChildActivity 重新启动时,我只得到一个带有 RESULT_CANCELLED 的 ParentActivity 结果。 ChildActivity 重新启动后,我无法收到任何进一步的结果。
我怎样才能得到进一步的结果。
问候, pradeep_ch。
【问题讨论】:
-
为了什么目的需要重启activity?
-
子Activity调用startActivityForResult后,是已经打开的Activity的父Activity,所以会调用完成Activity的onActivityResult。我的建议是不要重新开始活动。这不是 Android 的方式;)
-
ChildActivity基本上是用来录制视频的,它有翻转相机选项,当用户点击flip_camera按钮切换相机并且相机切换时需要重新启动活动。
-
@pradeep_ch : 在这里查看切换摄像头而不重新启动您的活动stackoverflow.com/questions/16765527/…
标签: android