奇妙な問題があります。こことインターネットでいくつかのヒントを見つけましたが、問題を解決するものは何もありませんでした。だからここに何が起こるかです:
9つのアイテムがあるTabBarナビゲーションがあります。それらはすべてUINavigationItemsです。それらの1つで、特定の条件下でデフォルトのviewControllerを別のviewControllerに置き換えます。
そのために、popViewControllerとpushViewControllerを使用します。これは完全に機能しますが、UINavigationBarが同期していないという問題があります。これには正しいビューが表示されるという効果がありますが、[戻る]ボタンをクリックすると、空のナビゲーションバーアイテムに移動し、そこからrootViewController(たとえば、「詳細」)に戻ります。
これが私のコードです:
- (void)viewWillAppear:(BOOL)animated {
if ([[myAppDelegate bcUser] userLoggedIn]) {
// user is logged in
MyDataLoggedInViewController *loggedInViewController = [[[MyDataLoggedInViewController alloc] initWithNibName:@"MyDataLoggedInView" bundle:nil] autorelease];
UINavigationController *navController = self.navigationController;
[[self retain] autorelease];
[navController popViewControllerAnimated:YES];
[navController pushViewController:loggedInViewController animated:YES];
}
}
誰かが助けてくれることを願っています。私は見つけたすべてを試しましたが、何も役に立ちませんでした。:-/
おかげで、そして最高の願い、トーマス