从子Activity返回Activity.getIntent()时没有额外的内容

时间:2015-04-30 17:56:34

标签: android android-intent android-activity

我有一个活动A,我用一些额外的东西启动(即将一些数据放入启动活动的Intent)。从这个Activity我启动了另一个Activity B.问题是当我从B回到A时,通过调用finish(),A Activity的getIntent()方法返回一个不包含额外内容的Intent。 所以,我的问题是:这是正常行为吗?有没有什么方法可以表示我想让它保持它开始的Intent的活动A. 哦,请注意我已经覆盖了活动A中的onSaveInstanceState()。

编辑: 我不再在我的设备上遇到此问题。而且我没有改变代码中的任何内容。我正在使用一个3岁的设备进行测试。我想知道这可能是由设备上的故障引起的吗?

2 个答案:

答案 0 :(得分:1)

  

这是正常行为吗?

是的,是的。使用startActivityForResult启动B,然后在A中覆盖onActivityResult。在完成B调用setResult(int, intent)之前,使用要返回到A的数据填充意图。onActivityResult获得与第三个参数相同的意图。

答案 1 :(得分:1)

是行为正常。如果您想从Activity Y启动Activity X并从X获取一些数据并返回Y,那么您必须使用{{1}} onActivityResult()`方法  在创建意图并将数据放入意图后的活动X中,您需要执行以下操作

的setResult(RESUKT_OK,I);

`