2009-09-22 151 views
1

我有一個導航控制器和我的代碼添加1個按鈕是這樣的:的UIBarButtonItem黑色而不是白色

UIBarButtonItem *configButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"config.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(showConfigWindow)]; 
self.navigationItem.leftBarButtonItem = configButton; 

它的工作權利,但圖標是黑色的,而不是白色的!

如果我用這個:

UIBarButtonItem *configButton = [[UIBarButtonItem alloc] initWithTitle:@"Settings" style:UIBarButtonItemStyleBordered target:self action:@selector(showConfigWindow)]; 

文本正確的白色顯示。

圖標正常,因爲我通過界面生成器使用它們,它們顯示正確。

+0

您能提供發生了什麼的圖片嗎?你確定你的圖片格式正確,並且沒有被反轉,出於某種原因? (嘗試另一種顏色,看看會發生什麼) – Malaxeur 2009-09-22 13:26:23

+0

看看這裏:http://personales.upv.es/jorfermo/screenshot.jpg 這是在UIButton中的相同圖像。一個是在導航控制器上,另一個是在uitoolbar上。 – Jorge 2009-09-23 07:03:12

回答

0

UIBarButtonItem根據圖像阿爾法值呈現灰度圖像。因此,如果圖像完全不透明,那麼無論源圖像是什麼顏色,它總是會呈現黑色,但如果圖像是透明的,則會呈現一些灰色陰影。

爲了呈現完全白色或顏色,您需要創建自定義UIBarButtonItem。詳情請見Can I have a UIBarButtonItem with a colored image?

相關問題