2010-03-28 131 views
0

由於某些原因,如果我嘗試使用左上角的後退按鈕返回主菜單,則只有標題返回到前一個菜單,而不是視圖控制器。只有當我使用其他按鈕顯式調用popViewControllerAnimated時,視圖控制器纔會返回到上一個菜單。導航控制器的後退按鈕不起作用!

有沒有辦法解決這個問題?我想我已經編寫了錯誤的代碼。試圖谷歌搜索,但無法找到像我的任何案件。

+2

您需要發佈您的代碼。 – 2010-03-28 01:19:12

+0

您是如何從前一頁導航到此頁面的? 請把你的代碼... – 2010-03-28 06:03:22

回答

0

我得到完全相同的問題。這裏是我的代碼:

- (IBAction) showGameView:(id) sender { 
    gameView = [[TCGameViewController alloc] initWithNibName:@"TCGameViewController" bundle:[NSBundle mainBundle]]; 
    [self.navigationController pushViewController:gameView animated:YES]; 
    [gameView release]; 
} 

,當我與gameView做,我這樣做:

[self.navigationController setNavigationBarHidden:NO animated:YES]; 

但是當我按下「返回」按鈕循環通過導航欄它所做的一切,但從來不會彈出視圖。我甚至不知道如何調試它。

在我的另一個視圖中,「infoView」我調用與以前相同的代碼,除了NavBar從不隱藏,但它工作得很好。

help!當您覆蓋您的自定義視圖控制器下面的方法可以發生

0

此問題:

- (UINavigationItem*)navigationItem 

但你不指定的UIBarButtonItem爲返回UINavigationItemleftBarButtonItem財產。

如果您使用自定義navigationItem,並希望標準後退按鈕功能,可以按如下方式添加一個方法(記住,每一個的UIViewController具有對navigationController的引用containts吧):

- (void)backButtonTapped 
{ 
    [self.navigationController popViewControllerAnimated:YES]; 
} 
定製navigationItem如下

然後設置部分:

- (UINavigationItem*)navigationItem 
{ 
    UIBarButtonItem* newLeftBarButton = [[UIBarButtonItem alloc] initWithTitle:@"Back" 
                     style:UIBarButtonItemStyleBordered 
                     target:self 
                     action:@selector(backButtonTapped)]; 

    UINavigationItem* navigationItem = [[[UINavigationItem alloc] init] autorelease]; 

希望這有助於。

相關問題