[英]UITabBarController using multiple storyboards
我正在努力將我巨大的 storyboard 重構為多個故事板。 在此過程中,我正在努力讓標簽欄圖像顯示出來。
class CustomTabBarController: UITabBarController{
@IBOutlet weak var myTabBar: UITabBar?
override func viewDidLoad() {
super.viewDidLoad()
setTabBarItems()
}
func setTabBarItems(){
guard let tabBar1 = self.tabBar.items?[0] else { return }
let myTabBarItem1 = tabBar1 as UITabBarItem
myTabBarItem1.image = UIImage(named: "1-tab-bar-unselected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem1.selectedImage = UIImage(named: "1-tab-bar-selected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem1.title = ""
guard let tabBar2 = self.tabBar.items?[1] else { return }
let myTabBarItem2 = tabBar2 as UITabBarItem
myTabBarItem2.image = UIImage(named: "2-tab-bar-unselected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem2.selectedImage = UIImage(named: "2-tab-bar-selected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem2.title = ""
guard let tabBar3 = self.tabBar.items?[2] else { return }
let myTabBarItem3 = tabBar3 as UITabBarItem
myTabBarItem3.image = UIImage(named: "3")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem3.selectedImage = UIImage(named: "3-tab-bar-selected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem3.title = ""
guard let tabBar4 = self.tabBar.items?[3] else { return }
let myTabBarItem4 = tabBar4 as UITabBarItem
myTabBarItem4.image = UIImage(named: "4-tab-bar-unselected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem4.selectedImage = UIImage(named: "4-tab-bar-selected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem4.title = ""
guard let tabBar5 = self.tabBar.items?[4] else { return }
let myTabBarItem5 = tabBar5 as UITabBarItem
myTabBarItem5.image = UIImage(named: "5-tab-bar-unselected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem5.selectedImage = UIImage(named: "5-tab-bar-selected")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal)
myTabBarItem5.title = ""
}
}
這就是我以前和正在工作的。 目前它不顯示任何項目圖像,只顯示“項目”。 我在導航視圖 controller 中添加了一個標簽欄項目。
我試過的
・來自 UITabBarController 的實例化 VC
・在設置導航視圖 controller 中設置導航項,這有效,但應用程序啟動時標簽欄為空。
任何幫助表示贊賞
class CustomTabBarController: UITabBarController{
override func viewDidLoad() {
self.viewControllers![3].title = "Your Title" //This for title
self.tabBar.items?[0].image = UIImage(named: "YourImageName")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal) // This for image
}
當您的圖像未出現時意味着您的圖像尺寸不正確,因為我也面臨同樣的問題。 圖像可能太大而無法顯示。 標簽欄項目圖像的大小應約為 28pt-32pt(像素)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.