Цвет оттенка на сегментированном элементе управления не в стиле бара - PullRequest
4 голосов
/ 13 октября 2011

У меня проблема с компиляцией с UiSegmentedControl, стиль которого скрыт.Цвет черный.Я получаю сообщение об ошибке:

"Tint color on non-bar style segmented control"

Можно ли это решить, и это проблема для отправки приложения?

Ответы [ 3 ]

7 голосов
/ 13 октября 2011

Я думаю, что это ошибка в Xcode / Interface Builder.
iOS HIG ничего не говорит о различных стилях, и документация явно разрешает оттенки цветов для bezeled UISegmentedControls:

UISegmentedControlStyleBezeled
Сегментированные элементы управления в этом стиле могут иметь оттенок.

Я бы просто проигнорировал предупреждение.

1 голос
/ 19 января 2012

В конструкторе интерфейса выберите элемент управления Сегмент.

В Инспекторе атрибутов установите Оттенок на По умолчанию .

0 голосов
/ 06 июля 2012

По какой-то причине XIB издает это предупреждение, но iOS действительно поддерживает tintColor в стиле bezeled.Вы можете избежать предупреждения, указав его программно.Хотя есть хитрость.Если стиль установлен на bezeled, настройка tintColor будет игнорироваться.Вам нужно сделать это следующим образом:

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

В этом случае я загружаю XIB, для которого настроен bezeled (так что я вижу, как он подходит) ... но я установил обратнов бар и измените оттенок, прежде чем установить его обратно.Weird.

...