次のエラーが発生し続けます。
2011-04-02 14:55:23.350 AppName[42430:207] nested push animation can result in corrupted navigation bar
2011-04-02 14:55:23.352 AppName[42430:207] nested push animation can result in corrupted navigation bar
2011-04-02 14:55:23.729 AppName[42430:207] Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.
2011-04-02 14:55:23.729 AppName[42430:207] Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.
これが私がやっていることです。View Controller から、特定のボタンが押されたときに次を呼び出します。
EventsViewController *viewController = [[EventsViewController alloc] init];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:viewController];
navController.navigationBar.tintColor = [UIColor blackColor];
[self presentModalViewController:navController animated:YES];
[viewController release];
[navController release];
次に、EventsController で特定のボタンが押された場合、次のように呼び出します。
SingleEventViewController *viewController = [[SingleEventViewController alloc] initWithEvent:[currentEvents objectAtIndex:indexPath.row]];
[self.navigationController pushViewController:viewController animated:YES];
[viewController release];
次に、SingleEventViewController で特定のボタンが押された場合、次のように呼び出します。
EventMapView* viewController = [[EventMapView alloc] initWithCoordinates];
[[self navigationController] pushViewController:viewController animated:YES];
[viewController release];
そうです、ネストされたプッシュ アニメーションがあることは明らかですが、これは正しい方法ではないでしょうか? Apple の DrillDownSave コードを調べたところ、これが彼らのやり方のようです。viewDidLoad メソッドの代わりに init メソッドを使用しても問題はありませんか?