หมายเหตุ: หากคุณมีตัวควบคุมแถบแท็บที่มีตัวควบคุมการนำทางที่รูทของตัวควบคุมมุมมองแต่ละตัวการตั้งค่ารายการแถบแท็บบนตัวควบคุมมุมมองจะไม่มีผลกับชื่อเรื่องหากคุณกำลังตั้งค่าไฟล์navigationItem.title
. คุณจะต้องตั้งค่าtabBarItem
ลงในตัวควบคุมการนำทางแทนเพื่อให้รับจากตัวควบคุมแถบแท็บ
ไม่มีคำตอบที่โพสต์โดยคนอื่นทำงานสำหรับฉันเพราะแถบแท็บของฉันควบคุมมุมมองทั้งหมดมีตัวควบคุมการนำทางที่รากของพวกเขา - UITabBarController
นี่คือรูปแบบลำดับชั้นที่พบบ่อยสำหรับ คุณต้องตั้งค่าตัวควบคุมการนำทางtabBarItem
แทนเพื่อให้หัวเรื่องแสดงแตกต่างจากnavigationItem
ชื่อของ
คุณสามารถสร้างtabBarItem
และเชื่อมโยงกับ VC ของคุณได้โดยตรงเช่นนั้น
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
})
ตอนนี้คุณจะสามารถมีชื่อเรื่องอื่น (ตั้งค่าจาก VC ของคุณ) แยกจากชื่อที่กำหนดไว้สำหรับtabBarItem
ไฟล์.