2014-12-13 81 views
0

我想要將UI標籤欄圖標顏色更改爲值:紅色:0.75,綠色:1.0,藍色:1.0,Alpha:1.0,並在未選中圖標時變爲白色。更改UITabBar圖標的顏色

直到現在我還以爲你這是怎麼做到這一點:

UITabBarItem.appearance().finishedSelectedImage([NSForegroundColorAttributeName: UIColor(red: 0.75, green: 1.0, blue: 1.0, alpha: 1.0)], forState: UIControlState.Selected) 

    UITabBarItem.appearance().finishedUnselectedImage([NSForegroundColorAttributeName: UIColor.whiteColor()], forState: UIControlState.Normal) 

上面的代碼是在我的委託。

現在,我已經把這個代碼:

import UIKit 

class UITabBarViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    var testImage = UIImage(named: "22274")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate) 
    testImageView.tintColor = UIColor.redColor() 
    testImageView.image = testImage 

    // Do any additional setup after loading the view. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 



} 

進入我的標籤欄視圖控制器COCCO touch文件。我不知道爲什麼我得到一個錯誤仍然

+0

有沒有你要的顏色,或只是文本的圖像? – 2014-12-13 09:33:02

+0

您設置了色調顏色 – soulshined 2014-12-13 09:38:28

+0

我目前沒有圖像,但我正在談論未來。我可以在「更多」標籤欄圖標中看到它是灰色的,並且它不適合我的藍色背景。 @DánielNagy – 2014-12-13 14:54:42

回答

0

我已經遍歷UITabbarController的所有子控制器,然後設置TabBarItem的每個控制器的顏色或色調顏色,它確實有效。

+0

你能告訴我代碼嗎? – 2014-12-13 14:53:21

0

如果tabbaritem有一個形象,你可以設置它的顏色:

var testImage = UIImage(named: "someImageName")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate) 
testImageView.tintColor = UIColor.redColor() 
testImageView.image = testImage 
+0

我在哪裏添加這個?在代表或實際的視圖控制器? – 2014-12-13 15:50:49

+0

在實際viewcontollers,例如在viewDidLoad函數 – 2014-12-13 15:53:05

+0

哪個視圖控制器?我爲Tab Bar Navigation Controller製作的那個?或只是任何屏幕? – 2014-12-13 15:58:17