在 UIViewController 中使用 loadView 时非常有趣的问题。
通常我们是这样使用的
// Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView {
NSLog(@"loadview");
[super loadView];
}
如果删除
[super loadView];
我们会遇到死循环
- (void)loadView {
NSLog(@"loadview");
}
为什么?
最佳答案
在这种情况下,只有一种方法可以无限循环——获取 View 属性直到它没有被设置。如果你接下来写(例如):
- (void)loadView {
self.view = [[UIView alloc] initWithFrame:self.view.bounds];
}
你会得到无限循环,但是
- (void)loadView {
self.view = [[UIView alloc] initWithFrame:CGRectZero];
}
工作正常。
所以你不能访问 View 属性,除非你没有设置它。
关于ios - 使用 loadView 时无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4825640/