2016.7.8更新:
其實只要在UITabBarController中做如下設置即可:
UIImage * normalImage = [[UIImage imageNamed:@"sy1.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
UIImage * selectImage = [[UIImage imageNamed:@"sy.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
NSArray *array = self.viewControllers;
UINavigationController * nav = (UINavigationController *)array[0];
nav.tabBarItem.image = normalImage;
nav.tabBarItem.selectedImage = selectImage;
nav.tabBarItem.title = @"首頁";
使用UITabBarController時經(jīng)常需要給每一個tabBarItem設置自己的圖片,圖片有兩種狀態(tài)一種未選中狀態(tài),另一種選中狀態(tài)。默認情況下未選中狀態(tài)是灰色,選中狀態(tài)為藍色,即使你設置了圖片也不會顯示出清晰的圖片。如下圖一樣。

1.默認圖標狀態(tài)
所以如果希望出現(xiàn)如下效果則需要自定義圖片。步驟如下:
一、所使用的圖片有如下標準樣式
30*30像素大小、150dpi(分辨率)、透明背景、png格式。調(diào)整這些參數(shù)可以用mac自帶的預覽軟件來調(diào)整。大小和dpi可以通過預覽“工具”中的對應操作。
這里解釋透明背景怎么做:

1.1 單擊“顯示標記工具欄”

1.2 選擇“即時Alpha”

1.3 單擊選擇圖片不放,一直拖動直到需要的區(qū)域都選中后,再單擊“裁剪”,然后從“文件”中選擇“導出”即可
二、自定義tabBarItem.image屬性
//通過如下事例代碼即可。如果想讓顯示圖標為自己的圖片而不是未選中時為灰色,選中后為藍色時需自定義圖片.
//設置圖片呈現(xiàn)模式不作為模版圖片,這樣不會忽略顏色信息。
self.tabBarItem.image = [[UIImage imageNamed:@"wechat.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
//設置選中后的圖片
self.tabBarItem.selectedImage = [[UIImage imageNamed:@"wechat2.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
效果如圖:

2.1

2.2