基本上,我希望我的应用程序可以通过应用程序设置更改其启动画面。设置保存在 plist 文件中。
实际上这是关于不同的语言,我想让我的用户选择我的应用程序语言,即使它与系统首选语言不同。
可能吗?我搜索了一些答案,建议使用另一个视图控制器模拟为启动画面,但我的启动画面本身需要一些时间来加载我的应用程序,而不是暂停。那么我应该在真正的启动画面中什么都不显示吗?
我想知道是否有办法通过某些条件更改启动画面。
谢谢各位。
只要appDidFinishLoading
方法返回,闪屏就会显示YES
。一种可能的解决方案是让您拥有一个非常简单(不可本地化)的初始屏幕,并且在此方法中基本上什么都不做并YES
立即返回。
然后,您可以使用实际的视图控制器作为动态初始化的初始屏幕,并实际执行您的应用程序在该viewDidAppear
方法中可能需要的任何初始化。初始化完成后,您可以继续并显示通常是您的根视图控制器的内容。
编辑:但是,您还应该考虑,如本答案中所指出的,启动屏幕并非旨在向用户提供任何类型的内容。
Apple 没有提供这样做的方法,因为这将涉及修改Info.plist
或修改启动图像,这两者都会反过来破坏您的代码签名。它还会打开一个非常丑陋的蠕虫罐,因此Info.plist
可能永远不会允许修改,这反过来意味着您将无法动态更改启动屏幕,除非 Apple 通过其他方式添加明确的支持。但现在,恐怕你运气不好。