我了解,使用默认启动图标和启动画面是一种 HIG 违规行为,但我有这样的要求,我只需要第一次显示启动画面,是否可以实现?我能想到的一个简单的解决方案是:在 UIwindow 上显示为 imageView,然后根据计时器将其删除。我正在寻找其他选择。
4 回答
我的建议是重新设计您的视图层次结构,以便第一个视图模仿您希望显示的初始屏幕(嵌入 uiimage 的视图控制器应该可以正常工作)。然后在您的特定时间段后将“主屏幕”推到该视图的顶部。一些代码来确保这种情况只在第一次运行时发生,并且你应该很高兴去。
我不建议直接使用 UIWindow。这样做会导致各种头痛。
那很简单。
但是您不需要操作启动图像,而是您的应用程序加载的图像。为了防止第二次启动,您可以在内部存储中设置一个标志。
确保使用延迟加载/初始化技术并尽可能快地显示图像,而不是初始化。
我希望它有帮助!
所以你知道它违反了 HIG,但正在寻找一些解决方法。在上传应用程序并在首次启动时显示时,您必须拥有启动图像。我假设您不关心应用商店中的应用评论。
让我们想想
启动图像必须在主包中。并且主包对于您的代码是只读的。我有一些解决方法,但它可能仅适用于第二次启动以显示启动图像,然后不再显示。
添加任何名称的启动图像
将符号链接添加到名为 Default.png 的应用程序包中,该链接在 3. 步骤中显示该文件
在首次启动时将该启动图像复制到您的应用程序目录文件夹(应用程序包中的符号链接显示该文件)。
第二次启动应用程序并查看启动图像
删除复制的图像。
当您的应用找不到符号链接显示的 png 文件时,它无法显示启动图像
PS:就我个人而言,我没有尝试过,但可能会奏效。
如果你使用iOS6,你可以使用恢复功能。在第一次运行你的应用程序将显示启动图像。所有其他运行它将显示最后状态屏幕截图。