所以我目前一直在线程中使用splash,现在我考虑在一个活动中使用它。我在一个帖子中使用它的原因是在显示时在后台做东西。
我正在考虑使用活动的原因是我将能够全屏显示启动画面,然后当我切换到主活动时,让我们再次显示通知栏。我当然会使用启动活动来完成所有可能的背景数据。
这不是关于如何实施的问题,而是这种方法的缺点和优点,所有反馈都非常感谢。
答案 0 :(得分:2)
使用启动画面的缺点
这与Android应用通常的运作方式正交
如果您没有注意到,几乎没有任何内置应用程序具有启动画面(唯一突出的例子是谷歌地图导航)。通常,应用程序旨在立即向用户显示屏幕,然后在向用户显示某些选项时加载数据(请参阅Google地图)。
这对用户来说很烦人
我说这是一个经常被启动画面推迟的应用程序的用户。它们特别麻烦,因为我想快速切换应用程序而且它们阻止我这样做。
也许您可以实现一个显示主页面的方案,并在该页面上显示一个显示加载进度的小部件。在我看来,这更加用户友好。您的目标应该是尽快离开onCreate
,为用户留下响应式用户界面。亚马逊Appstore就是一个很好的例子:它会显示所有标题,然后在您玩游戏时加载应用和图像。
如果没有选择
使用线程作为初始屏幕的优点
它简化了对生命周期的关注
如果您使用活动,则必须确保它不在堆栈中,以便用户无法导航回到它(Android: 'Splash screen' only once)。
它简化了开始此活动的逻辑
您不必担心启动启动活动的时间和位置。您的其他活动可以通常使用启动画面调用活动,您不必在启动活动和实际活动之间来回切换
您不必担心将splash活动视为实体
它只会让你的活动需要更长时间才能启动