2016-02-06 20 views
1

我試圖通過故事板與自定義圖像設置導航欄項目,但它不起作用。在故事板中設置導航欄項目圖像不起作用

這是結果:

enter image description here

我使用的圖像是不是一個藍色的圓圈,這裏是設置和對象結構:

enter image description here

enter image description here

圖像具有適當的大小,我已嘗試多個圖像全部與第同樣的結果。

+0

viewDidLoad方法?有時候,如果沒有,圖標就會變成彩色。 – Douglas

+0

出於教育目的,你如何知道這一點? – rhedin

+1

我在一個標籤欄項目上使用了一個沒有alpha的png,並且所有出現的都是一個像您的那樣的彩色圖標。改變了阿爾法,它工作。色彩的色彩接管了。 – Douglas

回答

2

這是因爲導航欄將它的圖像視爲模板,並通過應用標準色調顏色來顯示它們。

要以原始形式顯示圖像,您需要使用UIImageRenderingModeAlwaysOriginal作爲圖像的渲染模式。

請問您的PNG文件alpha通道可以設置這個在您的UIViewController

- (void)viewDidLoad { 

    UIBarButtonItem* rightButton = self.navigationItem.rightBarButtonItem; 
    [rightButton setImage:[[UIImage imageNamed:@"imageName"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]]; 
} 
+0

這樣做,謝謝! – rhedin

+3

這是使用xcassets執行此操作的更簡潔的方法http://stackoverflow.com/a/33254730/884674 –

相關問題