开始现有的android活动

时间:2013-07-03 18:04:51

标签: android android-intent

我有一个申请 A是我创建B活动的启动器活动。从B我想回到A而不删除B的实例(所以没有完成)然后我想创建一个新的B实例让我们称之为B2。从A我希望能够显示B或B2而无需重新创建它们。 我再次强调B,B2是同一类只是不同的实例。

当我想去A的时候,从B开始,我想用

Intent myIntent = new Intent(getBaseContext(), MainAct.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(myIntent);

但我认为这是一个错误,因为它会清除其他情况。 我必须在案件中使用什么意图? 在c#windows应用程序中,我们会做B.hide(); A.show()。然后从A我们可以做到 A.hide(); B.SHOW()或B1.show(); 我怎么能在android中做到这一点?

2 个答案:

答案 0 :(得分:0)

使用FLAG_ACTIVITY_REORDER_TO_FRONT

来自doc

  

如果在传递给Context.startActivity()的Intent中设置,则此标志将为   导致已启动的活动被带到其任务的前端   历史堆栈如果已经在运行。

答案 1 :(得分:0)

如果B是一个活动,则不能有两个不同的实例。

你可以有2个不同的活动来扩展同一个类,但你已经表明你不希望这样。

您需要找到一种方法来更改B的外观和行为,而不是创建新实例。

请考虑阅读Activity Lifecycle