您需要查看ActivityGroup和LocalActivityManager。TabActivity(如其他答案中所建议)实际上扩展了 ActivityGroup。
这是一个让您入门的快速示例:
使用它来开始活动 A:
LocalActivityManager manager = getLocalActivityManager();
//A_ID == 1
Window activityWindow = manager.startActivity(A_ID, intent_activityA);
setContentView(activityWindow.getDecorView());
或者这个开始活动B:
//B_ID == 2
Window activityWindow = manager.startActivity(B_ID, intent_activityB);
setContentView(activityWindow.getDecorView());
活动被缓存并与指定的 ID 相关联。如果您多次调用具有相同 id 的 startActivity,则实际使用缓存的活动(并非总是如此,取决于您使用的意图)。如果需要,您可以轻松地从缓存中删除任何活动。查看LocalActivityManager了解更多详细信息。