动态更改默认活动

时间:2014-09-27 09:33:08

标签: android android-activity

我希望能够更改用户运行应用程序时运行的Activity

我知道如何在应用程序的清单文件中执行此操作,但我想在安装后以编程方式执行此操作。原因是,我希望用户能够在打开应用程序时选择加载哪个屏幕。

我该怎么做?我知道的唯一方法看起来非常笨重:拥有一个基本上空的Activity,它有MAIN intent-filter - 然后读取用户的设置并将用户转移到所需的Activity。这会产生很多混乱,比如需要考虑后端堆栈,并且一个接一个地加载一个活动的开销似乎浪费了时间和资源。

1 个答案:

答案 0 :(得分:1)

您无法动态更改启动器活动。

正如您所说,可以通过保存用户首选项并每次启动所需的活动。我已经尝试了它,它足够快,不能显示自己。不记得在主要活动上打电话给完成。它将解决堆栈问题。

此外,您可以为不同的活动使用不同的片段,并决定应将哪一个片段添加到主要活动中。它可能会更快。但是正如我所说,它足够快,可以启动一个新活动并隐藏主要活动,因为它是在onCreate方法中完成的。别担心。