我有一個視圖內的大小爲320x218的UIView(下圖代碼中的menuView)。我想加載一個導航控制器到這個視圖。即時通訊使用以下代碼來做到這一點:UINavigationController不顯示根視圖控制器
MenuViewController *menuController = [[MenuViewController alloc] initWithNibName:@"MenuViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:menuController];
navigationController.navigationBarHidden = YES;
[menuView addSubview:navigationController.view];
[menuController release];
[navigationController release];
當我執行它,根視圖未在該視圖中顯示。只顯示導航欄,其餘視圖爲空。
編輯:
我剛放置在兩個initWithNibName一個的NSLog():和viewDidLoad中:MenuViewController的。那個在initWithNibName:被調用,但一個在viewDidLoad中:不:S
更新:
我試着把menuController
我navigationController
思維,因爲它沒有出現,它可能不是在疊加。例外:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Pushing the same view controller instance more than once is not supported
確實存在MenuViewController.xib試試這個代碼和名稱是否正確? –
是的,是的。我只在MenuViewController的initWithNibName:和viewDidLoad中放置了一個NSLog()。 initWithNibName中的那個被調用,但viewDidLoad中的那個:不是:S –
看完您的評論後,您可以放置一行menuController.view;在你創建navigationController之後?只需添加該行,讓我知道結果。 –