2017-10-04 53 views
0

我在Xcode編程設置所選圖像爲我的標籤欄爲fowllows:iOS填寫我的TabBar圖標圖像?

[tabItem setSelectedImage:[UIImage imageNamed:@"tabBar_Curriculum_active"]]; 

這是「tabBar_Curriculum_active」形象的樣子: enter image description here

但是,這是它是如何在渲染的TabBar:

enter image description here

這就像iOS的決定忽略了白線的設計師加入到圖標!任何想法可能會發生什麼以及如何解決?

+0

大聲笑:-)很好解釋,你有沒有爲tabbar或其圖標應用任何色調顏色? – Bharath

+0

標題也是紅色的......你必須添加色調紅色的標籤欄。 – Amit

+0

是的,我做到了!使用: [[UITabBar外觀] setTintColor:[ThemeManager lightBlue]]; 因爲我其實也需要標題爲紅色! –

回答

1

就應該添加imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal到selectedImage

事情是這樣的:

[tabItem selectedImage: [[UIImage imageNamed:[imageName stringByAppendingString:@"tabBar_Curriculum_active"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]] 
+0

這絕對有訣竅!不確定爲什麼或者'誰'在搞亂我的照片,但是這確實能解決它。 TXS –

0

您必須添加兩個圖像集。你到目前爲止只添加了一個。一套是當選項卡被選中時應該出現的圖標,另一套則是當選項卡不被選擇時出現的圖標。

在下圖中,My View Controller嵌入在導航控制器中,因此我將選項卡欄項添加到導航控制器。

在屬性檢查器中,您將在選項卡欄項目部分 - >有一個選定的圖像下拉菜單。在「條形圖項目圖像」部分下 - >有一個名爲圖像的下拉菜單。這是您選擇未選中狀態的圖像的位置。

enter image description here

0

它看起來像問題是,你的圖標的白色部分是不透明的,而比透明。您在選項卡欄中獲得的圖像不是由顏色定義的,而是由alpha定義的。你將不得不回到你的設計師來修復alpha,或者使用像Sketch這樣的工具來修復你的圖標。