2016-12-28 104 views
2

我無法在我的應用程序導航欄中設置自定義左欄按鈕項目。下面是我所做的:無法在導航欄中設置左欄按鈕項目?

let profileImage = UIImage(named: "researcher_icon_selected") 
    let button = UIBarButtonItem(image: profileImage, style: .plain, target: self, action: #selector(self.viewDidLoad)) 
    self.navigationItem.setLeftBarButton(button, animated: true)  

我把這個代碼在我稱爲子類的UINavigationController的viewDidLoad中「ExpertsNavigationViewController。」但是沒有任何內容顯示在導航欄中!

這裏有幾個調試實驗,我想:

1)我打印左邊欄按鈕項目的畫面尺寸,還真是從我設置的自定義圖像正確的尺寸。所以實例就在那裏,它只是沒有在視圖中顯示出來。

2)我在一個全新的XCode項目中試過這個,並且自定義欄按鈕項出現了!

3)因爲這個,我試圖讓一個完全新的自定義導航控制器在我目前的項目,使這個最初的視圖控制器,在插在上面的代碼及其 viewDidLoad中,但同樣,沒有現身了!

4)我想也許我在App Delegate中做了些什麼,或者導航控制器的根視圖來改變導航欄。但什麼也沒有!

任何想法?我將不勝感激任何提示爲什麼bur按鈕項目不會出現。謝謝。

+0

你嘗試在故事板中創建'UIBarButtonItem'嗎? – Rikh

+0

爲什麼不在你的baseViewController'viewDidLoad'方法上實現這個? –

回答

5

問題是您正在配置導航控制器的navigationItem,但您需要從導航控制器配置根視圖控制器的navigationItem。將您的代碼移動到根視圖控制器的viewDidLoad()

+0

伊戈爾,你撞在了頭上...感謝隊友。 – Tariq

相關問題