活动A呼叫B和B呼叫C,需要C将数据发送回A

时间:2012-08-19 03:31:35

标签: java android android-activity

我有一个主要活动叫另一个(第二个)活动“VennDiagram”

Intent intent = new Intent(getApplicationContext(), VennDiagram.class);
startActivityForResult(intent, 200);

进行一些计算后的第二个活动调用第三个活动“ImageMapTest ....”acitvity

Intent i = new Intent(getApplicationContext(), ImageMapTestActivity.class);
i.putExtras(sendBundle);
startActivity(i);
//finish();

现在我需要帮助将arrayList从第3个活动返回到第一个?? !!

 Intent in = new Intent(getApplicationContext(), AndroidClientActivity.class);
 in.putExtra("songList", playList);
 setResult(200, in);
 finish();

我在第一次活动中确实有一个意图倾听者,但只是第3次活动不会将其发回给它

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
   super.onActivityResult(requestCode, resultCode, data);
    if(resultCode == 100 || resultCode == 200)
     {
           }
P.S我确实阅读了几个类似的帖子,但它们不是我想要的......

2 个答案:

答案 0 :(得分:2)

您应该能够将B收到的结果从C发回A。

protected void onActivityResult(int requestCode,int resultCode, Intent data) {
 super.onActivityResult(requestCode, data);

 setResult(resultCode,resultData);

 finish();
}

答案 1 :(得分:1)

完成C并将数组返回给B,然后返回B完成并将结果返回给A.