presentModalViewController viewDidLoad未被调用

时间:2009-12-22 11:07:00

标签: iphone viewdidload

我有一个调用视图的事件,但每次调用时,viewdidload事件都没有按预期显示。这是我用来称呼它的方法......

[self presentModalViewController:addItemViewController animated:YES];

然后在addItemViewController中,方法是

- (void)viewDidLoad {
    NSLog(@"alright, lad!");
}

要关闭视图,我有一个代码为

的按钮
- (IBAction)cancel {
    [self dismissModalViewControllerAnimated:YES];
}

“好的,小伙伴”日志会在视图第一次出现时显示,但在启动时再也不会显示。有没有一种方法可以让应用程序“忘记”视图?或者我应该使用其他加载方法?我尝试了loadView(我认为)但是它有一个空白的屏幕......

感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

仅在首次实例化视图时调用viewDidLoad。如果您不是每次都重新创建视图控制器,那么您只需调用一次(如果您收到内存警告,则再次调用,并且视图为零)。您可能想要使用viewWillAppear:或viewDidAppear:。

答案 1 :(得分:0)

确保在每种方法中调用超类,例如

- (void)viewWillAppear:(BOOL)animated {
  NSLog(@"view appeared");
  [super viewWillAppear:animated];
}