1-是我的第一个活动(主要)
2-是我的第二项活动
3 - 是我的第三项活动
我想从 1 运行 2 ,然后形成 2 运行 3 ,然后从 3 获取数据并将其返回到 1 。希望大家能理解。
这是我的代码:
像这样运行 2 form 1 :
Intent intent = new Intent(getApplicationContext(),MessageBox.class);
intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startActivityForResult(intent,5);
然后像这样从 2 运行 3:
Intent intent = new Intent(getApplicationContext(),ImageReceiver.class);
startActivityForResult(intent,5);
然后在 3 中我有这样的东西:
setResult(10);
finish();
所以我设置了结果,所以在 2 中得到这个结果:
if(requestCode==5)
{
if(resultCode==10)
{
Intent intent = new Intent(getApplicationContext(),MainActivity.class);
setResult(5,intent);
finish();
}
}
然后在 1 中我得到:
if(requestCode==5)
{
if(resultCode==5)
{
//here i am taking data from 3
}
}
问题是我什至无法在 logcat 中打开 2 因为我得到:
04-23 22:13:15.579:E / AndroidRuntime(15313):android.util.AndroidRuntimeException:在请求结果时使用了FORWARD_RESULT_FLAG
我真的不知道我应该做什么。请看一下这段代码。