如何界定你的控制人员为zy控制器?
我指的是,如果由于9名观点控制员的初始化而需要一定时间才开始,那么这就必须与控制人员在一定时间实际做些什么有关。 因此,你可以在两个步骤中使控制者感到 la笑:一个步骤是,当你把所有控制者都添加到表形控制器上;两个步骤是,在你选择一个具体表格时,相应的控制员先入门。
我认为,这是最清洁的办法。
否则,我将直接使用<条码>TabBar,以在你自己的表格中加以管理。
作为最后一种选择,我将根据某些逻辑,在适当的时候,通过打电话setViewControllers:animated:
,尝试并修改表格控制器的内容。 举例来说,您可以先把刺铁控制器放在<编码>应用:didFinishLaunching WithOptions:上,然后在稍后时间添加其余部分。
但是,我的实际建议是使构成部分控制员 la......
EDIT: after reading your question in the comment...
if you would give a try to lazy initialization of your controllers, what I mean is following:
you will initialize your controllers (or UIKit will when loading the nib) by calling [[... alloc] init...]; this is not changing;
“init
” 方法将控制器引入违约状态,如确定特性和ivar值,而且不会更加复杂;
在控制者表示意见之前,你通过采用某种具体方法完成了初始工作;这将通过“放弃许多代表团”部分进行,我认为这是初步化的一个漫长部分。
如果谈论“lazy initialization”造成部件的逻辑初始化与init
的内容之间模糊不清。
至于第3点,你有几项选择,可以选择何时完成初始工作。
On possibility is when the controller is about to be displayed. In this case, either you define -tabBarController:didSelectViewController:
in the tab bar controller delegate, or you use viewWillAppear
. This will give you the laziest initialization of all, but it could be add some delay on the exact moment when you select the tab before the view appears.
最好还是使用<代码>viewDidLoad,这将给你一种不太令人怀疑的初始化;all>/em>的你的控制员在你不控制(当然,在显示观点之前)的某个时候会发生,从而可能拖延事情,但不会出现在<编码>应用DidFinishLoading<<>/code>上,并且会更加方便,因为这会受到主机的控制。 当然,第一个选择是尝试。 另见。 UIViewController reference。
最后,关于单独线索的说明。 牢记并非所有安全使用<代码>UIKit的条码”,从一条单独的条码看,都是谨慎的。