7

新手问题...所以我有两个活动,Cherry 和 Apple,每个活动上都有一个按钮可以转到另一个活动。就这样来来回回。

在“樱桃”课上,我这样说:

intent = new Intent(Cherry.this, Apple.class)
startActivity(intent);

这意味着它应该去苹果。Apple 活动中有类似的代码。

我想我看到的是,例如,每次我 startActivity Apple 时,它​​都会启动它的一个新实例,而不仅仅是重新激活 Apple。我已经搜索了文档,但找不到可以满足我要求的标志或其他调用。

任何提示将不胜感激!

-- 皮托

4

2 回答 2

11

FLAG_ACTIVITY_REORDER_TO_FRONT呢?

FLAG_ACTIVITY_CLEAR_TOP也很有用,完成后栈上的活动,直到达到目标活动。

需要明确的是,即使使用上述标志,您的活动也可能会重新启动。如果您的活动被破坏以试图释放内存,则会发生这种情况。换句话说,您仍然需要确保您的活动可以处理重新启动,onPause并采取适当的预防措施onSaveInstanceState

于 2011-03-27T15:05:58.037 回答
3

Intent.FLAG_ACTIVITY_REORDER_TO_FRONT 将把启动的活动带回到前面,如果它已经按照这里给出的运行。您必须自己处理后退按钮,以免完成当前活动。

于 2011-03-27T15:06:11.107 回答