使用“viewDidLoad”我的viewController需要很长时间才能出现!

时间:2010-06-07 07:18:59

标签: iphone uiviewcontroller viewdidload viewdidappear

当我加载我的viewController时,我使用“viewDidLoad”方法来初始化我的视图,但这需要花费很多时间才能使视图出现。所以我有想法使用“viewDidAppear”方法来加速我的视图的外观但是每次我推动我的视图(这是正常的)或我弹出它(并且有我的问题)时,关于我视图的信息的加载现在被加载到内存中 你知道吗?

3 个答案:

答案 0 :(得分:0)

创建一个在viewDidLoad中启动的后台任务,并在完成时更新GUI。这应该至少让你显示GUI,但可能没有有效的数据。

答案 1 :(得分:0)

根据View Controller Programming Guide,您应该在loadView方法中创建视图:

  

如果您更喜欢以编程方式创建视图,而不是使用nib文件,则可以从视图控制器的loadView方法执行此操作。如果您打算以编程方式创建视图,则必须覆盖此方法。

也许您应该在loadView方法中创建视图,然后按照Understanding the View Management Cycle中的说明在viewDidLoad中加载额外数据,如果需要,使用willcodejavaforfood建议的后台任务。

答案 2 :(得分:0)

我使用“ViewDidAppear:animated”方法完成了这个问题,并且为每个外观加载数据的问题我通过在mehod顶部进行测试来处理它:

if(data==nil){/*i do ...*/}

对我而言,数据是我在加载视图时正在编写的数组