2

我在 Xcode 4.5.2 中工作。
我有以下问题:
当我从非空项目制作项目时 - 即视图是从情节提要初始化的,有时当我添加代码时

[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIButton *b = [UIButton buttonWithType:UIButtonTypeRoundedRect];
b.frame = CGRectMake(20, 20, 100, 100);
[self.view addSubview:b];

对于 viewDidLoad 方法,它在 addSubview 方法调用之后再次递归调用,有时(祝福天空)它不会。
谁能告诉我问题是什么以及如何解决?
我的感激之情。

4

2 回答 2

1

编辑:正如@WDUK 正确指出的那样,以下答案是错误的。它会解释递归loadView,而不是viewDidLoad

旧的,错误的答案:

递归调用发生在-[super viewDidLoad] 未设置对视图属性的调用之后,然后调用self.view.

您可能只是忘记将视图连接到文件所有者的视图出口。

于 2012-11-20T09:30:13.133 回答
0

当设备用完可用内存时,如果当前不可见,它可以释放视图。您应始终确保正确处理此行为。

例如,当您在使用导航或标签栏控制器时切换到另一个视图时,我可能会发生这种情况。

于 2012-11-20T09:23:47.977 回答