Элементы NavigationBar не отображаются, если мой пользовательский ViewController помещен в пул, отображается только при модальном представлении.
Появляется панель навигации, только элементы не отображаются.
Кажется, что он не может найти правильный NavigationController, если VC нажат.
Есть идеи?
Полный код на Github (FileExplorerViewController()
вызывается при нажатии)
Вызов:
final class DirectoryContentViewController: UICollectionViewController {
let editBarButtonItem = UIBarButtonItem(title: viewModel.editActionTitle, style: .plain, target: self, action: #selector(handleEditButtonTap))
activeRightBarButtonItem = editBarButtonItem
Расширение:
extension UIViewController {
var activeRightBarButtonItem: UIBarButtonItem? {
get {
return activeNavigationItem?.rightBarButtonItem
}
set(newValue) {
navigationItem.rightBarButtonItem = newValue
activeNavigationItem?.rightBarButtonItem = newValue
}
}
var activeNavigationItem: UINavigationItem? {
guard let viewController = navigationController?.topViewController else { return nil }
if viewController.navigationItem === navigationItem {
return navigationItem
} else {
return parent?.activeNavigationItem
}
}
}