非条形样式分段控件上的色调颜色

时间:2011-10-13 10:41:10

标签: iphone objective-c ios uisegmentedcontrol

我有一个UiSegmentedControl的编译问题,它的样式是bezeled。颜色是黑色。我收到一个错误:

"Tint color on non-bar style segmented control"

这可以解决吗,这是应用提交的问题吗?

3 个答案:

答案 0 :(得分:7)

我认为这是Xcode / Interface Builder中的一个错误 iOS HIG没有说明不同的样式,文档明确允许为bezeled UISegmentedControls着色:

  

<强> UISegmentedControlStyleBezeled
  此样式的分段控件可以具有淡色。

我会忽略警告。

答案 1 :(得分:1)

在界面构建器中,选择“段控件”。

在属性检查器中,将色调设置为默认

答案 2 :(得分:0)

出于某种原因,XIB会发出此警告,但iOS确实支持带有bezeled样式的tintColor。您可以通过以编程方式指定它来避免警告。但是有一个技巧。如果样式设置为bezeled,则将忽略设置tintColor。你需要这样做:

[segControl setSegmentedControlStyle:UISegmentedControlStyleBar];
segControl.tintColor = [UIColor colorWithWhite:0.48 alpha:1.0];
[segControl setSegmentedControlStyle:UISegmentedControlStyleBezeled];

在这种情况下,我正在加载一个设置为bezeled的XIB(所以我可以看到它是如何适合的)...但是我将它设置回一个条并在设置之前更改色调。怪异。