2017-04-23 98 views
0

我有以下情形:代表Android的活动结果其他活动

  1. MainActivity类使用startActivityForResult与请求代码SOME_USER_INPUT启动InputActivity1
  2. InputActivity1允许用户输入一些数据,然后使用Intent.putExtra将此数据传递到InputActivity2
  3. InputActivity2用户可以输入更多的数据。
  4. 通过调用在InputActivity2setResultfinish,用户输入的所有数据将被返回到的MainActivityonActivityResult方法与先前指定的请求代码SOME_USER_INPUT

也就是说,MainActivity不得注意到在所有从InputActivity2的结果来了,虽然它只是叫InputActivity1

我该如何做从第2步到第3步的转换?我已经尝试从InputActivity1开始InputActivity2,请拨startActivityForResult请求代码和finish,但(不出所料地按预期)MainActivity未收到任何内容。

+0

你能分享你的代码吗? –

回答

1

调用startActivity(InputActivity2)后,不要在InputActivity1中调用finish。只有当您从InputActivity2获得结果时才执行此操作。通过这种方式,您可以将结果从InputActivit2传递给MainActivitiy。

我想,你可以用一个InputActivity实现这个与两个片段。想一想。

+0

谢谢,这个工作很好。有时解决方案可能非常简单!而且我知道你可以以不同的方式实施,我现在只是尝试各种活动来练习一些;) – sigalor