以编程方式创建视图

时间:2012-01-29 10:37:10

标签: objective-c ios

我以编程方式设置视图。我就是这样做的。假设我有SettingsViewController.m

在这个文件中我有两个方法

-(void)loadView
{
UIView *view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame];

    self.view = view;
    [view release];
}

-(void)didViewLoad
{
//  In that method I create some buttons labels etc
}

我的方法是否正确?在loadView方法和viewDidLoad方法中的标签等中创建视图

1 个答案:

答案 0 :(得分:2)

说实话,如果您在viewDidLoadloadView中添加用于创建视图的代码,那么确实无关紧要。加载视图后会调用viewDidLoad,因此如果要从XIB实例化,甚至会调用loadView。如果您使用的是XIB,那么这是添加额外视图的好地方。如果您以编程方式创建视图,就像在loadView中一样,那么您可以在viewDidLoadviewDidLoad中创建按钮,标签等,但它不会真正创建差异 - loadView几乎在loadView运行后直接调用。

就个人而言,如果我使用viewDidLoad以编程方式创建视图,那么我会将所有视图创建代码放在那里,而不是放在{{1}}中。