UITabBarItem
從類文檔:
默認情況下,未被選擇的實際和選定的圖像是 從源圖像中的α值自動創建。到 防止系統着色,提供圖像與 UIImageRenderingModeAlwaysOriginal。
線索不是你是否使用UIImageRenderingModeAlwaysOriginal
,重要的是什麼時候使用它。
要防止未選定項目的灰色,您只需要防止未選定圖像的系統着色。這裏是如何做到這一點:
var firstViewController:UIViewController = UIViewController()
// The following statement is what you need
var customTabBarItem:UITabBarItem = UITabBarItem(title: nil, image: UIImage(named: "YOUR_IMAGE_NAME")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal), selectedImage: UIImage(named: "YOUR_IMAGE_NAME"))
firstViewController.tabBarItem = customTabBarItem
正如你所看到的,我問的iOS應用圖像的原始顏色(白色,黃色,紅色,等等)僅適用於未選中狀態,並留下該圖像作爲它用於SELECTED狀態。
此外,您可能需要爲選項卡欄添加色調顏色,以便爲SELECTED狀態(而不是默認的iOS藍色)應用不同的顏色。根據上面的屏幕截圖,您正在爲選定狀態應用白色:
self.tabBar.tintColor = UIColor.whiteColor()