2014-02-06 78 views
0

工作,我有我想要準備建立一個能與iOS7 SDK的應用程序。不幸的是,我們在iOS5上仍然有很多用戶,所以我們需要支持它。UISegmentedControl tintColor不iOS7

我遇到當NIB設置在Xcode 4.6,打開是造型上iOS7一個UISegmentedControl的問題。它只是忽略tintColor。當我設置的NIB文件在Xcode 5開,設置tintColor工作得很好,但試圖用筆尖在iOS5中,當我得到一個錯誤。分段控件位於工具欄控件中。以下是我正在使用的代碼。

toolbar.barTintColor = [UIColor redColor]; 
toolbar.tintColor = [UIColor whiteColor]; 
[toolbar setTranslucent:NO]; 
[toolbar setBarStyle:UIBarStyleBlack]; 
segmentedControl.tintColor = [UIColor whiteColor]; 

更新:

我與我的一些其他的發鈔銀行看到的是每個配置以下行爲:

打開在4.6,建立了5.0及更高版本 - 工程在5.0使用tintColor

打開所有版本的不能風格段控制器建立了5.0及更高版本 - 對工程的iOS5和iOS7,但顯示了iOS6的

打開一個「捆綁無法找到NIB」錯誤5.0建立7.0及更高版本 - 以「燦工作的iOS7和iOS6的,但在崩潰的iOS5 「T找到NIB」錯誤

然而,對於這個特定的NIB的‘打開在5.0構建5.0以及後來的’配置似乎是工作沒有崩潰。所以,這解決了我當前的問題,但我還是不明白,爲什麼我的一些其他的發鈔銀行將不具有相同配置的工作...

+0

顯示Xcode的給你的錯誤。 – memmons

回答

0

在iOS的7添加的barTintColor屬性,因此使用它在iOS 6中或更早的時候會導致崩潰。

更新你的代碼,以防止誤用:當您嘗試使用上的iOS5筆尖

if ([toolbar respondsToSelector:@selector(setBarTintColor:)]) { 
    toolbar.barTintColor = [UIColor redColor]; 
} 
+0

整個代碼塊以上由iOS7檢查所包圍,所以,這不是問題。 – Shawn

+0

你沒有在你的問題中說清楚。 – rmaddy

相關問題