【问题标题】:Is there a way to always use the default.png when returning from background?从后台返回时,有没有办法始终使用 default.png?
【发布时间】:2011-08-29 15:25:37
【问题描述】:

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

有没有办法让应用始终显示 default.png,直到应用再次激活?

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

一些澄清:

  1. 我这样做是为了避免 UI 无响应。

  2. 我正在使用 default.png,因为它看起来像正在加载,并且提供了比无响应 UI 更好的体验

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

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

提前致谢。

【问题讨论】:

    标签: iphone ios4 background multitasking default.png


    【解决方案1】:

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

    【讨论】:

    • 我知道这不是本书的“正确”行为 - 认为它更多地是为了在返回应用程序时显示一些加载。在大多数情况下,default.png 看起来像一个加载屏幕,并且提供比无响应 UI 更好的体验
    • 我完全明白你的意思,这就是我的意思。您也可以使用进度条向用户传达正在加载的内容。
    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

      很可能,您在applicationWillEnterForeground:applicationDidBecomeActive:等方法中花费的时间太长(执行太多计算)。作为一个简单的测试,尝试将这些方法中的代码注释掉,看看是否出现问题再次。

      【讨论】:

        【解决方案4】:

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

        请注意,当您现在在启动时看到默认图像时,这仅仅是因为您的应用在后台运行时已被终止。这是正常的,尤其是对于占用大量内存然后在进入后台之前没有足够释放它的应用程序(我认为操作系统的阈值约为 18MB,但我不确定)

        【讨论】:

        • A.我必须在后台运行应用程序,关闭并重新启动它是不可能的。 , B. 这不是真的 - 它有时会显示 default.png 而不会重新启动整个应用程序。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-03-09
        • 2021-06-28
        • 2011-10-12
        • 2020-07-21
        • 1970-01-01
        • 2011-11-26
        • 2023-02-08
        相关资源
        最近更新 更多