viewDidLoad和loadView之间的区别?

时间:2012-03-05 21:18:06

标签: objective-c iphone ios5 viewdidload loadview

两个objective-c方法, - (void)viewDidLoad和 - (void)loadView是在执行程序时调用的方法,但它们之间有什么不同?

3 个答案:

答案 0 :(得分:5)

您的意思是viewDidLoadloadView吗? viewDidLoad是在视图完全加载时调用的方法。这意味着您的所有IBOutlet都已连接,您可以更改标签,文本字段等。

如果您(通常)没有从笔尖加载,则

loadView是一个调用的方法。您可以使用此方法在代码中完全设置视图控制器的视图,并完全避免使用界面构建器。

您通常希望避免loadView并坚持viewDidLoad

答案 1 :(得分:1)

创建视图时使用 - (void)loadView。通常用法是:

-(void)loadView {
    UIView *justCreatedView = <Create view>;
    self.view = justCreatedView;
}

在自定义视图外观时使用 - (void)viewDidLoad。 Exapmle:

-(void)viewDidLoad {
    self.view.backgroundColor = [UIColor blackColor];
    ...
}

答案 2 :(得分:0)

我认为你在谈论loadViewviewDidLoad

loadView是一种不使用nib文件的方法 - 您可以使用它以编程方式“编写”您的界面

视图完全加载时,

viewDidLoad会自动触发。然后你就可以开始与它进行互动了。

更多阅读此处的讨论阅读iPhone SDK: what is the difference between loadView and viewDidLoad?