私は別のモーダルビューコントローラーからモーダルビューコントローラーを提示していますが、これはiOS6より前のすべてのiOSバージョンで正常に機能しました。しかし、iOS6では、エミュレーターに次の警告メッセージが表示されます。
Warning: Attempt to present <UINavigationController: 0x14e93680> on <UINavigationController: 0x9fc6b70> while a presentation is in progress!
この警告が表示された場合、モーダルビューコントローラは表示されません。基本的に、私は次のようなコードを使用してモーダルビューコントローラーを表示しています。
WebAuthViewController *authController = [[WebAuthViewController alloc] initWithNibName:nil bundle:nil];
authController.challenge = challenge;
authController.delegate = self;
UINavigationController *aNavController = [[UINavigationController alloc] initWithRootViewController:authController];
[self presentModalViewController:aNavController animated:YES];
[aNavController release];
[authController release];
すでに表示されているビューは、次のようにモーダルビューでも表示されるUIWebViewです。
WebViewController *addController = [[WebViewController alloc] initWithNibName:nil bundle:nil];
addController.urlToLoad = [NSURL URLWithString:urlString];
addController.delegate = self;
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:addController];
navigationController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
[addController release];
アップルのドキュメントでは、このようなナビゲーションコントローラをスタックできるはずだとまだ示唆されているので、なぜこれが発生するのか説明できません。ヒントはありますか?