Catatan: Jika Anda memiliki pengontrol bilah tab dengan pengontrol navigasi di root dari setiap pengontrol tampilan, pengaturan item bilah tab pada pengontrol tampilan tidak akan memengaruhi judul jika Anda menyetel navigationItem.title
. Anda harus mengatur tabBarItem
ke pengontrol navigasi sebagai gantinya untuk diambil dari pengontrol bilah tab.
Tidak ada jawaban yang diposting oleh orang lain yang berfungsi untuk saya karena pengontrol tampilan bilah tab saya semuanya memiliki pengontrol navigasi di root mereka - ini adalah pola hierarki umum untuk UITabBarController
. Anda harus menyetel pengontrol navigasi tabBarItem
untuk mendapatkan judul yang ditampilkan secara berbeda dari navigationItem
judulnya
Anda dapat membuat tabBarItem
dan mengaitkannya ke VC Anda secara langsung seperti itu.
let tabBarVCOne = BooksListViewController()
tabBarVCOne.tabBarItem = UITabBarItem(title: "Books", image: nil, tag: 0)
tabBarViewControllers.append(tabBarVCOne)
...
Maka Anda akan memiliki sesuatu seperti ini:
//Wrap each view controller in a navigation controller.
self.viewControllers = tabBarViewControllers.map(UINavigationController.init)
Tetapi itu harus diubah ke yang berikut untuk mengambil yang sudah terkait tabBarItem
dari pengontrol tampilan dan mengaturnya ke pengontrol navigasi secara otomatis.
self.viewControllers = tabBarViewControllers.map({
let navigationController = UINavigationController(rootViewController: $0)
navigationController.tabBarItem = $0.tabBarItem
return navigationController
})
Anda sekarang akan dapat memiliki judul yang berbeda (ditetapkan dari VC Anda) terpisah dari judul yang ditentukan untuk Anda tabBarItem
.