如何优化我的控制器,使其加载速度更快



我使用的大多数iOS应用程序都非常灵敏,当我点击一个元素时,它会立即进入下一个视图。在我的应用程序中,我的某些视图控制器需要 0.5-1.0 秒才能加载。

我的代码都在viewDidLoad方法中,我很确定这就是问题所在,但我无法移出任何东西,因为我需要我实例化的每一个元素。

我认为一个解决方案是将我在viewDidLoad中所做的所有工作移动到线程中,然后在我准备调用addSubview时调用主线程,即使UIKit不是线程安全的,这也能工作吗?还是我错过了什么?

尝试将 viewDidLoad 中的一些代码移动到 viewdidAppear。 视图显示后,将调用 viewDidAppear。如果你必须做一些艰苦的工作,那就在那里做,也许在你这样做的时候在某个地方展示一个微调器。

你在viewDidLoad中到底在做什么?顺便说一句,请记住,视图仅在您需要时才加载,如果您想更快地在视图之间切换,我可以建议您创建一个初始化阶段,您可以在要显示的所有视图控制器上调用 -view,也许有助于微调器或进度条。但请注意,这仅适用于密集型加载任务,而不适用于消耗内存的任务。
你的要求听起来很奇怪,所以你最好试着更好地解释为什么你的viewDidLoad这么慢,也许有什么问题。

在 Xcode 中定义 UI 元素,作为设计界面的一部分。 这样,Xcode 可以将您的 storeyboard 或 xib 文件编译为快速加载的二进制形式。

最新更新