Android 安卓-如何启动活动链?
我打算在一个链中启动3个活动,比如从主要的开放活动a、B,然后是C,这对用户来说是可见的,但我无法找到在Android中实现这一点的方法。不要问我为什么,我只需要这样做来恢复我的应用程序状态,这是以前的状态 谢谢你的建议 航路点 编辑:Android 安卓-如何启动活动链?,android,android-activity,Android,Android Activity,我打算在一个链中启动3个活动,比如从主要的开放活动a、B,然后是C,这对用户来说是可见的,但我无法找到在Android中实现这一点的方法。不要问我为什么,我只需要这样做来恢复我的应用程序状态,这是以前的状态 谢谢你的建议 航路点 编辑: 好的,我已经尝试在For cycle中打开活动,但它们没有正确打开。它们是链接的,但只有当我按下“后退”按钮并向我显示时才会重新创建。我需要一些解决方案,它会导致:打开A,如果A被打开,检查是否需要打开B->是,打开B,检查是否需要打开C->是,打开C,不需要打
好的,我已经尝试在For cycle中打开活动,但它们没有正确打开。它们是链接的,但只有当我按下“后退”按钮并向我显示时才会重新创建。我需要一些解决方案,它会导致:打开A,如果A被打开,检查是否需要打开B->是,打开B,检查是否需要打开C->是,打开C,不需要打开另一个活动->完成你没有提供你尝试过的任何信息,所以我给你一个最简单的答案: 方法startActivityIntent,更多信息 编辑:嗯,这个怎么样?我现在身边没有SDK,但我可以提供一个概念。我不确定它是否有效,但我希望它能引导你找到解决方案 让我们假设这是ActivityA的代码:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (doINeedActivityB) {
Intent activityC = new Intent(this, ActivityC.class);
this.startActivity(activityA);
}
if (doINeedActivityC) {
Intent activityC = new Intent(this, ActivityC.class);
this.startActivity(activityC);
}
}
在每个活动中重写onResume方法。在此处添加检查和活动的开始
public void onResume() {
if( condition )
startActivity( intentForTheNextActivity );
}
其中,条件是您在示例中可能遇到的任何条件,如B应启动,C应启动等,而intentForTheNextActivity是链中以下活动的意图,例如,如果现在在A中,则意图是B等
我很难理解你到底想做什么。有时它看起来像是一条链,a打开B,B打开C,等等,有时你似乎想要一些随机流,a打开B,B打开a,a打开B,B打开C,这使得你很难给出一个具体的答案
我能做的是,建议您仔细阅读以下内容:
特别是方法和步骤
如果您需要更多的帮助-您需要更好地解释自己,可能需要一个图表或一些您迄今为止尝试过的示例代码。在开始任何活动之前,决定应该开始哪项活动。 以您的案例>>首先检查B,如果是检查C,现在打开所需的1
我知道活动中有可比较的数据,但正确的数据结构将始终允许您在实际需要时随时随地访问数据。对于未来的读者:如果您希望使用适当的后台堆栈启动活动,则应使用TaskStackBuilder 通过向应用程序清单文件中的每个元素添加android:parentActivityName属性,定义活动的自然层次结构 创建TaskStackBuilder的实例并调用AddNextEntWithParentStack,将要启动的活动的意图传递给它。
有关更多详细信息,请参见编辑的。但是,即使我没有提供足够的信息,你的回复也没有提到开设多个活动。希望编辑,帮助问题是,如果我有动态类,一个接一个的A->B->A->B->A->B,在你的例子中,我从A:B开始打开,但不是全部,只是快速打开,然后完全打开,就这样。。。