2011-06-10 32 views
0

我想在我的項目中創建另一個UINavigationBar,但似乎我缺少一些關鍵細節。當應用程序第一次加載時,它確實有它自己的導航系統,但是現在我試圖將另一個導航添加到模態不使用[Projectname] AppDelegate創建一個UINavigationBar?

很多教程告訴你需要將視圖連接到[自我窗口],它似乎只在AppDelegate的文件工作,但是當我試圖把代碼*在viewDidLoad中,我似乎永遠建立沒有任何錯誤。

我已經在多個應用程序中看到過這個,但這是如何完成的(以編程方式或使用IBuilder)? 謝謝!

示例代碼我在試圖viewDidLoad中

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:[self viewController]]; 
[self.window addSubview:navigationController.view]; 

回答

0

你沒有表現出足夠的代碼才能夠明白你是怎麼做到的,但在我看來,你是顯示模態控制器,然後嘗試添加一個子視圖到其視圖中的導航控制器。

你可以嘗試,並直接推模態的導航控制器(從您的應用程序委託或者是有意義的,你的應用程序):

(IBAction) navigateToSecondaryViewController { 
    if (secondaryViewController == nil) { 
     informationTableViewController = [[SecondaryViewController alloc] 
       initWithNibName:@"SecondaryViewController" 
       bundle:[NSBundle mainBundle]]; 
     secondaryViewController.delegate = self; 
     } 

    if (navController == nil) { 
      navController = [[UINavigationController alloc] 
      initWithRootViewController:secondaryViewController]; 
    } 

    [self presentModalViewController:navController animated:YES]; 

} 

Full example here

+0

這個工作幾乎完美!只需要稍微更改第一個if語句。 – drfranks3 2011-06-10 18:01:45

相關問題