完成和更新特定先前活动的有效方式

时间:2013-01-04 11:35:40

标签: android activity-finish

正如我在标题中提到的,我有两个问题。

1)我在三个活动中都有用户详细信息表单。

活动Heirarchy:

ActivityOne ---> ActivityTwo--> ActivityDetails1---> ActivityDetails2---->ActivityDetails3 ---> ResultActivity

在此层次结构中,详细信息表单从ActivityDetails1开始。 Submit button is in ActivityDetails3。因此,当我单击提交按钮时,我将在3个活动中输入的所有详细信息提交给数据库。如果提交成功,我将按意图转到其他活动(ResultActivity)。

如果失败则停留在相同的ActivityDetails3上。每当提交成功时,除了转到其他活动之外,我还需要完成3个ActivityDetails活动。为此,我通过将这些活动设为静态作为此link中的标记答案来完成这三项活动。但这似乎效率低下,因为静态上下文可能会导致内存泄漏。有人可以建议我这样做的有效方法吗?

2)提交成功后,除了转到其他活动(ActivityOne)之外,我必须通过设置操作栏项标题来更新ActivityTwoResultActivity用户提交的详细信息之一。我能够让以后的活动更新标题,但不能更新以前的活动。有人可以指导我如何刷新堆叠中的先前活动,以便我在操作栏上的操作项标题也会在以前的活动中更改。

如果有人可以帮我解决上述两个问题,我将感激不尽。相关的代码片段表示赞赏。

1 个答案:

答案 0 :(得分:0)


不要输入任何大段落。因为没有人有病人阅读大段
输入您的问题,问题,简要,简单,易于理解的内容。

请参阅以下方案 活动A和活动B. 从A转到B.如果B做一些操作并完成,则结果在A中更新。
在上面的场景中,您使用以下技术 放protected void onActivityResult(int requestCode, int resultCode, Intent data) 并在B退出后处理更新 在调用完成()之前,在A和B中按需要设置结果代码