1

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

4

3 回答 3

6

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

loadView如果您(通常)不从笔尖加载,则调用该方法。您可以使用此方法完全在代码中设置视图控制器的视图,并完全避免界面构建器。

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

于 2012-03-05T21:20:34.127 回答
1

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

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

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

-(void)viewDidLoad {
    self.view.backgroundColor = [UIColor blackColor];
    ...
}
于 2012-03-05T21:30:24.030 回答
0

我想你在谈论loadViewviewDidLoad

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

viewDidLoad当视图完全加载时自动触发。然后你就可以开始与它互动了。

更多内容请阅读此处iPhone SDK 的讨论:loadView 和 viewDidLoad 有什么区别?

于 2012-03-05T21:23:14.797 回答