2012-03-26 84 views
1

我使用下面的利用工具欄上的圖像添加按鈕的代碼,但它僅顯示顏色沒有圖像顯示。UIToolBar按鈕圖像

UIBarButtonItem *locationItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"butImg.png"] style:UIBarButtonItemStylePlain target:self action:@selector(butImgPressed:)]; 

任何幫助將不勝感激。

+0

請確保'[UIImage imageNamed:@「butImg.png」]'不爲零。 – yuji 2012-03-26 12:21:47

+0

圖像不是零,它在圖像yuji的地方顯示白色,謝謝yuji&Parth。 – Mangesh 2012-03-26 12:27:17

+1

您可能想到的一種解決方法是製作帶有此圖像的按鈕,並將該按鈕作爲自定義視圖添加到條形按鈕。 – cocoakomali 2012-03-26 17:39:21

回答

3

只有做到這一點的方法:

UIButton *btnName = [UIButton buttonWithType:UIButtonTypeCustom]; 

[btnName setFrame:CGRectMake(0, 0, 23, 21)]; 

[btnName setBackgroundImage:[UIImage imageNamed:@"butImg.png"] forState:UIControlStateNormal]; 

[btnName addTarget:self action:@selector(butImgPressed:) forControlEvents:UIControlEventTouchUpInside]; 

UIBarButtonItem *locationItem = [[UIBarButtonItem alloc] initWithCustomView:btnName]; 
+0

謝謝Jignesh,我做了同樣的,我想知道爲什麼圖像不顯示這個代碼UIBarButtonItem * locationItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@「butImg.png」] style:UIBarButtonItemStylePlain target:self動作:@selector(butImgPressed :)]; – Mangesh 2012-03-27 05:49:03

3

你想知道爲什麼它不工作?

原因UIToolBar正在創建白色蒙版,是因爲UIToolBar默認情況下不允許彩色圖像。

所以完成你想要的東西的唯一方法是使用UIBarButtonItemUIButton作爲customView。

+0

+1 ...原因:) – Mangesh 2013-01-16 07:57:17