在标题中,我想知道viewDidLoad
中UIViewController
的“默认”实施是什么?它真的有用吗?如果在我的UIViewController's
子类中我写
-(void)viewDidLoad{
[super viewDidLoad];
/*custom code here*/
}
或
-(void)viewDidLoad{
/*custom code here*/
[super viewDidLoad];
}
P.S。这不是重复的,在人们问他们何时应该调用[super viewDidLoad]的其他问题中,而我的主要关注点是UIViewController的实现与它有关。
答案 0 :(得分:5)
该实现不执行任何操作,如果在加载视图后无法进行任何设置,则可以安全地删除。但是,在这里没有自定义设置是相当罕见的;这是视图控制器告诉您所有UI对象都可以自定义数据的地方。它包含在模板中,并带有一个空实现作为提醒:这里是执行此操作的地方。
至于何时调用super
:一般的期望是设置或初始化方法在工作之前调用super
,并且拆除方法在工作之后调用super
。
答案 1 :(得分:0)
ViewDidLoad
方法在控制器视图加载到内存后调用。
这是您希望实例化任何实例变量并构建在此视图控制器的整个生命周期中存在的任何视图的位置。但是,此时视图通常尚不可见
无论视图层次结构是从nib文件加载还是在loadView方法中以编程方式创建,都会调用此方法。您通常会覆盖此方法以对从nib文件加载的视图执行其他初始化。