2017-03-23 91 views
0

我想在我的項目中使用Storyboard或Interface Builder代碼而不是。所以,在爲我的應用程序創建一個側面菜單的需求中,我想創建一個導航欄,讓我有機會通過點擊導航欄的左側按鈕打開菜單。按代碼生成導航欄視圖(不使用故事板)

這是我沒有成功嘗試:

override func viewDidLoad() { 
    super.viewDidLoad() 
    centerViewController = ViewController() 
    centerViewController.delegate = self 

    centerNavigationController = UINavigationController(rootViewController: centerViewController) 
    let menuButton: UIBarButtonItem = UIBarButtonItem(title: "TMDB", style: .plain, target: centerViewController, action: Selector(("toggleLeftButton"))) 
    centerNavigationController.navigationItem.leftBarButtonItem = menuButton 
    view.addSubview(centerNavigationController.view) 
    addChildViewController(centerNavigationController) 

    centerNavigationController.didMove(toParentViewController: self) 
} 

我的導航欄沒有顯示任何按鈕,也沒有標題。

+0

異教徒檢查這一次 - :http://stackoverflow.com/questions/28793331/creating-a-navigationcontroller-programatically-swift –

+0

感謝您的回答。不工作。我試圖在我的AppDelegate中添加我的代碼來生成按鈕,但仍然無法工作。 –

回答

0

解決

的問題是我在那裏書面方式代碼。它必須在NavigationController所屬的viewController中實例化。

我的意思是,在centerViewController不在他父母身邊,因爲我正在做。

這個代碼行:

let menuButton: UIBarButtonItem = UIBarButtonItem(title: "TMDB", style: .plain, target: self, action: Selector(("toggleLeftButton"))) 
self.navigationItem.leftBarButtonItem = menuButton 

內部控制器的ViewController。

編輯

參考:

Adding UIBarButtonItem to UINav..Controller

相關問題