我有以下代码,我在导航控制器中显示视图控制器。 只是为了测试我显示它3秒然后解雇它。 发生的事情是它消失了 - 然后在一秒左右后重新出现。 我做错了什么?
- (void) test
{
[myNavCtrl dismissModalViewControllerAnimated:YES];
}
- (void) viewDidAppear:(BOOL)animated
{
MyViewController *ctrl = [[MyViewController alloc] init];
[ctrl setDelegate:self];
myNavCtrl = [[UINavigationController alloc] initWithRootViewController:ctrl];
[myNavCtrl setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[self presentModalViewController:myNavCtrl animated:NO];
[ctrl release];
[myNavCtrl release];
[self performSelector:@selector(test) withObject:nil afterDelay:3];
}
答案 0 :(得分:1)
每次出现控制器视图时都会调用viewWillAppear
方法,因此您创建了一个循环。出现视图,它调用覆盖调用视图的模态视图。当模态视图消失时,将再次调用调用视图控制器的viewWillAppear
。泡沫,冲洗,重复。