2012-12-31 202 views
0

我爲我的UIToolBar設置了tintcolor。它在ios 6.0中正確顯示,但在ios 5.0模擬器上顯示爲黑色。我的代碼在這裏UIToolbar在ios 5.0和ios 6.0上顯示不同的顏色模擬器

originalBounds = mysearchBarBarItem.customView.bounds; 
mySearchBar.bounds = CGRectMake(0,0,215,44); 
myTopToolbar.tintColor = [UIColor colorWithPatternImage:[UIImage imageNamed:NAVIGATION_BAR_BACKGROUND]]; 
myTopToolbar.barStyle = UIBarStyleDefault; 

mySearchBar.barStyle = UIBarStyleDefault; 
mySearchBar.tintColor = [UIColor colorWithPatternImage:[UIImage imageNamed:NAVIGATION_BAR_BACKGROUND]]; 

[myTopToolbar setItems:toolBarItemsArray animated:YES]; 
+0

您是否在設備中檢查過? – thavasidurai

+0

我已經在真實的iOS 6.0硬件中檢查了它,它顯示正確。我沒有iOS 5.0真實設備進行測試。我已經測試了它iOS 5.0模擬器 – Harikrishnan

回答

2

我不知道這是否會有所作爲,但您可以嘗試更改指定條形的樣式和顏色的順序。嘗試:

myTopToolbar.barStyle = UIBarStyleDefault; 
myTopToolbar.tintColor = [UIColor colorWithPatternImage:[UIImage imageNamed:NAVIGATION_BAR_BACKGROUND]]; 

這有可能改變tintcolor後分配樣式重置顏色。

編輯

爲什麼這會影響只有iOS5的,而不是iOS6的我不知道。

1

嘗試設置顏色屬性

myTopToolbar.tintColor = [UIColor redColor]; 

如果能正常工作均iOS6的和iOS5的,那麼問題應該是在圖像。

編輯 檢查這個問題

iphone:UIToolbar when set to tint color behaves differently on iOS 5 and ios6 simulator?

+0

它可以在 – Harikrishnan

+0

中使用您可以在iOS5設備中檢查它。我希望你不會在設備上遇到任何問題 – thavasidurai

+0

你是否在設備上檢查過這個 – thavasidurai

2

可以使用UIAppearance(適用於iOS 5.0及以上)。

1

嘗試在您的應用程序委託實現類要做到這一點,這將改變工具欄和搜索欄的顏色在整個應用程序

用於設置搜索欄

[[UISearchBar appearance] setTintColor:[UIColor colorWithPatternImage:[UIImage imageNamed:NAVIGATION_BAR_BACKGROUND]]]; 

OR

[[UISearchBar appearance] setTintColor:[UIColor colorWithRed:102/255.0 green:102/255.0 blue:102/255.0 alpha:1]]; 

的色調設置工具欄的色調

[[UIToolbar appearance] setTintColor:[UIColor colorWithPatternImage:[UIImage imageNamed:NAVIGATION_BAR_BACKGROUND]]; 

OR

[[UIToolbar appearance] setTintColor:[UIColor colorWithRed:102/255.0 green:102/255.0 blue:102/255.0 alpha:1]]; 

設置背景圖片

[[UIToolbar appearance] setBackgroundImage:[UIImage imageNamed:@"bgtoolbar.png"] forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault]; 
+0

沒有運氣。這也不適用於iOS 5。0 – Harikrishnan

+1

這很奇怪,請試試這個[[UISearchBar外觀] setTintColor:[UIColor colorWithRed:102/255.0 green:102/255.0 blue:102/255.0 alpha:1]];和[[UIToolbar外觀] setTintColor:[UIColor colorWithRed:102/255.0 green:102/255.0 blue:102/255.0 alpha:1]]; – Talha

+0

工作正常。有一個非常淺的黑色。但它改變了整個應用程序中工具欄的顏色。 – Harikrishnan

0

我已經solveed它。只是將圖像轉換爲RGB值並像這樣設置。

myTopToolbar.tintColor = [UIColor colorWithRed:139/256.0 green:0/256.0 blue:0/256.0 alpha:1.0]; 
+1

你應該除以255.0 –

相關問題