首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何完成一项活动并返回到不同的位置?

如何完成一项活动并返回到不同的位置?
EN

Stack Overflow用户
提问于 2013-01-24 18:25:48
回答 2查看 301关注 0票数 2

我的应用程序实现了一个扩展到3-4个活动的操作。此流程的入口点可以来自应用程序中的不同活动。(HomeActivity,各种displayActivities)。当最后一个活动成功完成后,我想返回到开始的活动。

有没有一种最佳实践方法来做到这一点?谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-25 03:32:44

您可以使用全局静态布尔值来帮助您(在示例SomeClass.IsClosingFlow中),另外,如果每个活动在“流”中(flow=meaning它是需要关闭的活动包的一部分),则应将其定义为“标记”。如果您的所有活动都在扩展一些抽象活动(即isActivityInFlow()),我建议您使用此标记作为抽象方法。

下面的代码演示了这一点,它需要放在应用程序中每个活动的onResume()中:

代码语言:javascript
复制
    // Check to see if we are in the process of closing activities
    if (SomeClass.IsClosingFlow){
        if (isActivityInFlow()){
            this.finish();  
        }
        else{
            // If we got here, and we're not in the flow anymore
            SomeClass.IsClosingFlow = false;
        }
    }
票数 1
EN

Stack Overflow用户

发布于 2013-01-25 03:37:27

有很多不同的方法来管理这类应用程序流。当你从一个活动调用到下一个活动时,有一种方法可能对你有用,而且很容易,那就是使用startActivityForResult()。然后,当您最终完成时,您只需设置结果并调用finish()。在每个活动中,您可以实现onActivityResult(),以便它设置结果并对自身调用finish()。通过这种方式,您可以将多个活动链接起来,然后再链接回启动该链接的人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14499034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档