iPhone falhando ao apresentar o controlador de visão modal
Eu estou tentando exibir uma exibição restrita logo após outra exibição ter sido apresentada modalmente (a segunda é uma exibição de carregamento que aparece).
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
// Show load
LoadViewController *loader = [[LoadViewController alloc] init];
[self presentModalViewController: loader animated:NO];
[loader release];
}
Mas quando faço isso recebo um "Program received signal:" EXC_BAD_ACCESS "." erro.
O rastreamento de pilha é:
0 0x30b43234 in -[UIWindowController transitionViewDidComplete:fromView:toView:]
1 0x3095828e in -[UITransitionView notifyDidCompleteTransition:]
2 0x3091af0d in -[UIViewAnimationState sendDelegateAnimationDidStop:finished:]
3 0x3091ad7c in -[UIViewAnimationState animationDidStop:finished:]
4 0x0051e331 in run_animation_callbacks
5 0x0051e109 in CA::timer_callback
6 0x302454a0 in CFRunLoopRunSpecific
7 0x30244628 in CFRunLoopRunInMode
8 0x32044c31 in GSEventRunModal
9 0x32044cf6 in GSEventRun
10 0x309021ee in UIApplicationMain
11 0x00002154 in main at main.m:14
Alguma ideia? Estou totalmente perplexo! A visualização de carregamento está vazia, então definitivamente não há nada acontecendo lá que esteja causando o erro. É algo a ver com o lançamento de 2 visualizações de forma modal no mesmo evento ou algo assim?
Obrigado,
Mike
Edit: Muito estranho ... Eu modifiquei um pouco para que a exibição de carregamento é mostrada após um pequeno atraso, e isso funciona bem! Então, parece ser algo dentro do mesmo evento!
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
// Show load
[self performSelector:@selector(doit) withObject:nil afterDelay:0.1];
}
- (void)doit {
[self presentModalViewController:loader animated:YES];
}