2017-02-11 5 views
0

У меня есть viewDidLoad переопределение в моем подклассе UIViewController, встроенное в контроллер навигации. Я скрыл панель инструментов, и когда я запустил, панель инструментов там (что подтверждает, что я внутри контроллера навигации и что я обращаюсь к ней правильно), но я не могу получить никаких кнопок для показа. Что я здесь делаю неправильно?Swift: кнопки панели инструментов для панели инструментов UINavigationController

override func viewDidLoad() { 
    super.viewDidLoad() 

    var buttons = [UIBarButtonItem]() 
    for title in buttonTitleArray { 
     let plainButton = UIBarButtonItem(title: title, style: .plain, target: self, action: #selector(self.setContentMode(_:))) 
     let systemButton = UIBarButtonItem(barButtonSystemItem: .play, target: self, action: #selector(self.setContentMode(_:))) 
     buttons.append(plainButton) 
     buttons.append(systemButton) 
    } 
    self.navigationController?.toolbarItems = buttons 
    self.navigationController?.isToolbarHidden = false 
} 

Я попытался добавить кнопки с помощью self.navigationController?.setToolbarItems(buttons, animated: false), но это не работает.

+0

Вы пытаетесь добавить кнопки (Пользовательские/Systems) на панели навигации или настройки в панели инструментов на панели навигации? –

+0

Я пытаюсь добавить панель инструментов в нижней части окна. Если есть путаница в отношении двух разных кнопок, которые я добавляю, я делаю это, потому что раньше я не использовал кнопки панели инструментов, поэтому я хотел посмотреть, что такое простой. Другими словами, вы можете игнорировать тот факт, что я делаю две кнопки для каждого заголовка. –

ответ

0

Пожалуйста, попробуйте ниже код для отображения кнопок панели инструментов просмотра: -

var items = [UIBarButtonItem]() 

    //Custom Button 
    let plainButton = UIBarButtonItem(title: "Test", style: .Plain, target: self, action: #selector(self.customButtonTapped)) 
    items.append(plainButton) 

    //Add Flexible space between buttons 
    let flexibalSpace = UIBarButtonItem(barButtonSystemItem: .FlexibleSpace, target: self, action: nil) 
    items.append(flexibalSpace) 

    //Toolbar system button 
    let systemButton = UIBarButtonItem(barButtonSystemItem: .Play, target: self, action: #selector(self.systemButtonTapped)) 
    items.append(systemButton) 

    self.toolbarItems = items //Display toolbar items. 
    self.navigationController?.toolbarHidden = false 
+0

Спасибо. Похоже, моя проблема заключалась в добавлении кнопок в navigationController.toolbarItems, а не self.toolBarItems –

Смежные вопросы