У меня есть вид, который вызывается из контроллера панели вкладок, где я хочу иметь leftBarButtonItem, topItem с логотипом и rightBarButtonItem.NavigationItem Left and Top не отображается
На этом первом взгляде мне удалось получить topItem с логотипом и rightBarButtonItem, но без возможности LeftBarButtonItem, программно или перетащить его в раскадровку. И я не понимаю, почему. Вот код.
private func setNavBarItems() {
self.navigationItem.leftBarButtonItem?.image = UIImage(named: "empty-photo-red")
if let navigationBar = self.navigationController?.navigationBar as? SeetyNavigationBar {
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 40, height: 40))
imageView.contentMode = .ScaleAspectFit
let image = UIImage(named: "logo-trans")
imageView.image = image
navigationBar.topItem?.titleView = imageView
}
self.navigationItem.rightBarButtonItem!.image = UIImage(named: "FAQ")
}
Если я развожу левый батончик с помощью «!» приложение аварии, так что я думаю, что нет leftBarButton, но почему?
И после того, как я выполню segue с этого вида на следующий, я получил leftBarButtonItem и rightBarButtonItem, а topItem с логотипом исчезнут. Я использую ту же функцию, что я называю в моем viewDidLoad()
EDIT: Для моего topItem который исчезающий: self.navigationItem.titleView = imageView
и не navigationBar.topItem?.titleView = imageView
решить эту проблему.
Для первого контроллера внутри навигационной панели iOS автоматически не добавляет левую полосу, так как в ней нет «предыдущего» контроллера. Вам нужно будет добавить его вручную, если необходимо: Ref: http://stackoverflow.com/questions/20949844/add-left-and-right-bar-button-item-in-category-of-navigation-controller-class – Shripada