如何优化我的控制器以便加载更快?

时间:2012-06-04 01:42:07

标签: iphone objective-c ios performance optimization

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

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

我认为一个解决方案是将我在viewDidLoad中完成的所有工作移到一个线程中,然后在我准备调用addSubview时调用主线程,即使UIKit不是线程安全的,它也能工作吗?或者还有其他我想念的东西?

3 个答案:

答案 0 :(得分:1)

尝试将viewDidLoad中的某些代码移动到viewdidAppear。一旦显示视图,就会调用viewDidAppear。如果你必须做一些努力工作,那就去那里,也许在你做的时候在某个地方展示一个旋转器。

答案 1 :(得分:1)

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

答案 2 :(得分:0)

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