0
我有一個奇怪的問題。我在這裏和互聯網上發現了一些tipps,但我沒有解決我的問題。所以這裏是發生了什麼:popViewController不會刪除UINavigationBar項目
我有一個TabBar導航9項。所有這些都是UINavigationItems。在其中一個我在一定條件下替換默認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];
}
}
我希望有人可以提供幫助。我嘗試了我發現的一切,沒有任何幫助。 : -/
感謝和最美好的祝願, 托馬斯
要麼你或你需要重置你的UINavigationController的rootView。 – Brirony 2011-03-04 01:18:05
不幸的是,這並沒有幫助。我已經嘗試過,沒有運氣。什麼「重置rootView」是什麼意思? – thomas 2011-03-04 05:53:43
[UINavigationController class Reference](http://developer.apple.com/library/ios/#documentation/uikit/reference/UINavigationController_Class/Reference/Reference.html)navigationController的rootView是viewController,它位於位置0(導航堆棧的底部)。 – Brirony 2011-03-04 17:53:21