finish()不会触发onActivityResult

时间:2010-06-25 15:21:34

标签: android

当用户从子Activity返回主Activity时,我想刷新列表。我重写了onActivityResult,当我按下子Activity上的后退按钮时调用了该函数。但是,还有其他方法可以从子Activity返回主Activity,并且所有方法都应该触发刷新。但是,当我从孩子那里拨打finish时,onActivityResult永远不会被调用。

我使用startActivityForResult启动子活动

Intent i = new Intent(ConfGroupActivity.this, ConfGroupDetailsActivity.class);
ConfGroupActivity.this.startActivityForResult(i, 0);

我完成了这样的儿童活动

setResult(0);
finish();

1 个答案:

答案 0 :(得分:3)

当你调用setResult(0)时,它实际上是RESULT_CANCELLED的值。你需要打电话

setResult(RESULT_OK);