有从后台返回时总是使用default.png的方法吗?

时间:2011-08-29 15:25:37

标签: iphone ios4 background multitasking default.png

在我的一个应用程序从后台返回时,我得到一个不一致的行为: 有时我会得到default.png,有时我会得到应用程序所在的最后一个屏幕的快照。 在这两种情况下,UI都需要一两秒钟才能再次响应。 因此,我宁愿展示default.png而不是“无响应的用户界面”

有没有办法让应用程序始终显示default.png,直到应用再次变为活动状态?

目前我想到的“愚蠢”的方法是通过使用default.png显示一些Modal视图并在返回前景时将其删除。

很少澄清:

  1. 我这样做是为了避免无法回应用户界面。

  2. 我正在使用default.png,因为它看起来像加载并提供更好的体验,然后无响应的用户界面

  3. 该应用必须在后台运行。

  4. (对于任何问过的人 - 当我有时返回并看到default.png而不是最后一个UI状态时,它没有关闭 - 从一开始的App加载有一个非常不同的路径,我很确定)< / p>

    提前致谢。

4 个答案:

答案 0 :(得分:0)

这不是正确的行为,您可能会遇到错误。基本上只要你的应用程序在后台,当你启动它时,你不应该看到default.png,除非你从后台删除它(双击主页按钮并删除该应用程序)。

答案 1 :(得分:0)

最有可能的是,您在applicationWillEnterForeground:applicationDidBecomeActive:等方法中花费的时间太长(执行太多计算)。作为一个简单的测试,请尝试在这些方法中注释掉代码并查看如果问题再次发生。

答案 2 :(得分:0)

对于对此感兴趣的未来人,您可以使用应用程序加载回来时显示应用程序中的最后一个视图的事实。 您可以将VC显示为移动到背景,这将代表一些加载 - 从而实现所需的行为。

我已经看到一些其他应用在回到应用程序时运行的情况下使用相同的行为。

答案 3 :(得分:-1)

只需在Info.plist中将属性“应用程序不在后台运行”设置为YES即可。该应用程序永远不会进入后台,当按下主页按钮时,它将被终止。所以你回到了iOS4之前的行为。

请注意,当您在启动时立即看到默认图片时,这只是因为您的应用已在后台处理时终止。这是正常的,特别是对于占用大量内存然后在进入后台之前没有充分释放它的应用程序(我认为操作系统的阈值大约是18MB,但我不确定)