我有一个申请 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中做到这一点?
答案 0 :(得分:0)
使用FLAG_ACTIVITY_REORDER_TO_FRONT
来自doc
如果在传递给Context.startActivity()的Intent中设置,则此标志将为 导致已启动的活动被带到其任务的前端 历史堆栈如果已经在运行。
答案 1 :(得分:0)
如果B
是一个活动,则不能有两个不同的实例。
你可以有2个不同的活动来扩展同一个类,但你已经表明你不希望这样。
您需要找到一种方法来更改B
的外观和行为,而不是创建新实例。
请考虑阅读Activity Lifecycle。