当前位置: 首页 > 知识库问答 >
问题:

如何为Android应用程序维护活动堆栈?

连坚白
2023-03-14

我是Android编程新手。

我想了解如何为特定的Android应用程序维护活动堆栈,以及它如何根据用户导航进行更改。

例如,如果有多个活动,那么当用户单击“后退”按钮或“主页”按钮或启动新活动时,活动堆栈的行为如何?

我试图找到一个合适的职位,我可以得到所有的信息,但我没有得到任何。有人能建议我一些链接/帖子,我可以学习这个吗?

编辑:

到目前为止我遇到的链接/帖子:

>

  • onSaveInstanceState没有保存我的值(oncreateBundle始终为空)

    使用保存实例状态保存Android活动状态

    Android:启动模式“单实例

  • 共有1个答案

    子车轶
    2023-03-14

    你是说活动和后台?

    这里有一个链接:http://developer.android.com/guide/components/tasks-and-back-stack.html

    任务是用户在执行特定作业时与之交互的活动的集合。活动按每个活动打开的顺序排列在堆栈(后堆栈)中。

    设备主屏幕是大多数任务的起始位置。当用户触摸应用程序启动器中的图标(或主屏幕上的快捷方式)时,该应用程序的任务就会出现在前台。如果应用程序没有任务存在(应用程序最近没有被使用),则创建一个新任务,该应用程序的“主”活动将作为堆栈中的根活动打开。

    当当前活动启动另一个活动时,新活动被推到堆栈顶部并获得焦点。上一个活动保留在堆栈中,但已停止。当活动停止时,系统将保留其用户界面的当前状态。当用户按下后退按钮时,当前活动从堆栈顶部弹出(活动被销毁),上一个活动恢复(其UI的上一个状态被恢复)。堆栈中的活动从不重新排列,只在当前活动启动时从堆栈中推送到堆栈上,然后在用户使用“后退”按钮离开堆栈时弹出。因此,后堆栈作为“后进先出”对象结构运行。图1通过一个时间线可视化了此行为,该时间线显示了活动之间的进度以及每个时间点的当前后台堆栈。

     类似资料:
    • 我有两种不同的活动。主要活动,联系人列表 在联系人详细信息 Intent Intent=新的Intent(getBaseContext(),MainActivity)。类);意图putExtra(“联系人编号”,联系人编号);星触觉(意图) 在MainActivity OnResume方法中 字符串数据=getIntent()。getExtras()。getString(“keyName”); a

    • 千万不要轻视正确配置安全设置的重要性。如果不正确配置安全设置,不但会使您的 ASP 应用程序遭受不必要的篡改,而且会妨碍正当用户访问您的 .asp 文件。 Web 服务器提供了各种方法来保护您的 ASP 应用程序免受未授权的访问和篡改。在您读完本主题下的安全信息之后,请花一定的时间仔细检查一下您的 Windows NT 和 Web 服务器安全性文档。 NTFS 权限 您可以通过为单独的文件和目录应

    • 问题内容: 我有一个使用Flask用Python编写的小应用程序。现在,我正在nohup下运行它,但是我想使其守护进程。这样做的正确方法是什么? 问题答案: 使用gunicorn部署可能是最简单的方法,请先安装gunicorn,然后: 尽管你可能想使用主管或类似性质的工具来监视黑胶皮(at the very least use – so you can reload/stop gunicorn e

    • 我正试图通过编程方式在Infinix手机中将我的应用程序作为受保护的应用程序进行检查。。但这似乎是不可能的,所以我正在尝试启动XManager中存在的受保护应用程序活动 我成功地通过这个代码打开了XManager 我不能按程序做其他事情 当我试图用此代码启动设置活动时 我有个例外 我也尝试直接启动受保护的应用程序,但我再次得到了同样的例外 更新 此异常的一些答案建议在我添加活动时添加以显示未解决的

    • 我已经用VS 2017创建了一个Android应用(Xamarin)导航抽屉应用。我在网上搜索了一个如何在应用程序中添加一个新活动的例子,该应用程序使用了已经创建的导航抽屉,但一直没有成功。有关于如何添加活动的想法吗? 谢谢保罗。