Примітка: Якщо у корені кожного контролера перегляду є контролер панелі вкладок з контролерами навігації, встановлення елемента рядка вкладки на контролерах перегляду не вплине на заголовок, якщо ви встановлюєте navigationItem.title
. Вам потрібно буде встановити tabBarItem
на навігаційний контролер замість того, щоб він вибирався з контролера панелі вкладок.
Жоден із відповідей, опублікованих іншими, не працював на мене, оскільки всі контролери перегляду мого панелі вкладок мають контролери навігації в корені - це загальна ієрархічна схема UITabBarController
. Ви повинні встановити контролер навігації tabBarItem
замість цього, щоб назва відображалася інакше, ніж navigationItem
назва
Ви можете створити свої tabBarItem
та пов’язати їх із своїм ВК безпосередньо так.
let tabBarVCOne = BooksListViewController()
tabBarVCOne.tabBarItem = UITabBarItem(title: "Books", image: nil, tag: 0)
tabBarViewControllers.append(tabBarVCOne)
...
Тоді у вас вийде щось подібне:
//Wrap each view controller in a navigation controller.
self.viewControllers = tabBarViewControllers.map(UINavigationController.init)
Але це слід змінити на наступне, щоб схопити вже пов'язане tabBarItem
з контролера перегляду та автоматично встановити його на навігаційний контролер.
self.viewControllers = tabBarViewControllers.map({
let navigationController = UINavigationController(rootViewController: $0)
navigationController.tabBarItem = $0.tabBarItem
return navigationController
})
Тепер ви зможете мати інший заголовок (встановлений на вашому ПК) окремим від заголовка, визначеного для вашого tabBarItem
.