2010-11-19 55 views
0

有没有办法“预加载”用户界面,但在我准备好之前不显示它?后台中的活动

我有一个服务,它有一个接收器侦听action_screen_on发生。发生这种情况时,我想加载一个活动。但是,现在它需要大约1秒的时间才能加载。我想预先预加载布局,以便在打开屏幕时尽快加载布局。

回答

0

您只需检查您传递给负责运行此活动的Intent的标志,确保您通过(Intent.FLAG_ACTIVITY_SINGLE_TOP),这将确保活动管理器不会创建该活动的新实例,如果该活动已经存在于活动堆栈中,但不在前面,这将避免每次收到此广播时调用(onCreate),并且会在已经运行的活动上调用(onResume)。

但是1秒的延迟将首次出现在你午餐的活动中;要解决这个问题,你只需运行分析器并检查为什么要花费这么多时间,不要忘记;模拟器一般很慢。

0

我会首先建议只是优化活动的显示。在其上运行分析器。 1秒很长时间;你可以做很多事情来减少这种情况。