2012-11-14 48 views
2

我使用下面的代碼來創建的UIBarButtonItem:的UIBarButtonItem tintColor iOS4的

UIBarButtonItem* searchBarButton = [[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"search_picto"] style:UIBarButtonItemStyleBordered target:self action:@selector(actionSearch:)] autorelease]; 
searchBarButton.tintColor = [UIColor colorWithRed:0.27 green:0.60 blue:0.20 alpha:1.00]; 

我添加此,另一個按鈕將UIToolbar,不知道這是相關的。 這工作得很好,給我我想要的樣子:

screenshot of UIButtonBarItem

的問題是,與iOS 4(我不得不支持)我不能設置tintColor。無法識別的選擇器。我怎樣才能爲iOS 4創建這樣一個按鈕?我需要能夠設置tintColor並有UIBarButtonItemStyleBordered。

感謝您的幫助。


我得到了它這樣的工作:

UISegmentedControl* searchButton = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"", nil]]; 
[searchButton setImage:[UIImage imageNamed:@"search_picto"] forSegmentAtIndex:0]; 
searchButton.momentary = YES; 
searchButton.segmentedControlStyle = UISegmentedControlStyleBar; 
searchButton.tintColor = [DELEGATE.config getColor:IFXShopConfigScopeShop name:@"navigationTint"]; 
[searchButton addTarget:self action:@selector(actionSearch:) forControlEvents:UIControlEventValueChanged]; 

你有一個空的NSString來初始化它,否則你不能設置的圖像。另外,addTarget必須使用UIControlEventValueChanged

回答

2

tintColor在iOS5的加入,爲iOS4的here你有一個解決方案

+0

我昨天看了這個,看來這是正確的方式之後所有。 –

+0

太棒了!我認爲,但我沒有嘗試過。謝謝 – VietHung

1

你需要創建一個UIButton,要麼繪製按鈕看起來像這樣由自己或設置背景圖片與此並用自定義視圖初始化UIBarButtonItem(您的UIButton)。

P.S.從iOS6的發佈,你不能編譯到armv6了,你可以支持的最低版本是4.3,根據我是不值得的...

+1

我使用了UISegmentedControl,但謝謝。 –

相關問題