1

创建新的objective-c 类UIViewController 文件时。我想知道 ViewController.m 文件或其他文件中的哪个命令/方法/行在从 nib 文件生成视图之前执行。

我只知道 viewDidLoad 会在 nib 文件之前先运行。还有别的事吗?

感谢您在这里帮助小菜鸟。

4

2 回答 2

1

在加载视图层次结构之前调用的唯一方法是initWithNibName:bundle:方法。然后第一次访问视图控制器时view加载nib(通过loadview方法),然后viewDidLoad调用方法。我希望这可以说清楚。

附言。尽管您可以覆盖loadview方法,但 Apple 声明:

如果您使用 Interface Builder 创建视图并初始化视图控制器,则不得覆盖此方法。(Apple 关于 loadview 方法的文档

于 2012-04-26T14:56:26.610 回答
0

试试-(void)loadView方法。在设置视图控制器的视图之前调用它,实际上这是您要设置(控制器)view属性的地方。self

-(void)loadView
{
    self.view = [[UIView alloc] initWithFrame:...]; //Or get it from the nib...
}
于 2012-04-26T14:48:19.153 回答