UISegmentedControl выбранный оттенок, не показывающий

Оттенок, который обычно показывает на a UISegmentedControl на нажатой кнопке не показывает, когда я установил целую военно-морскую панель на черный цвет (self.navigationController.navigationBar.tintColor = [UIColor blackColor];).

Действительно ли это - ошибка или что-то, что я пропускаю?

12
задан DShah 16 January 2012 в 16:09
поделиться

3 ответа

Для того, чтобы цвет оттенок, чтобы показать, есть пару требований:

segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;

Требуется для работы TintColor .

Вы также упоминаете, что у вас есть TintColor , установленный на [UICOLOR BlackColor] . К сожалению, UisegledControl всегда будет отображать выбранный сегмент с темнее . Цвет , никогда не зажигал. Попробуйте установить ваш Tintcolor - [UICOLOR DARKGRAYCOLOR] , и вы сможете увидеть выбранный цвет изменения сегмента.

60
ответ дан 2 December 2019 в 02:53
поделиться

Have you tried setting the tint on the segmented control separately?

segmentedControl.tintColor = self.navigationController.navigationBar.tintColor;
2
ответ дан 2 December 2019 в 02:53
поделиться

Попробуйте использовать цвет оттенка [UIColor colorWithWhite:80.0/255.0 alpha:1.0]. Это сделает черный цвет менее черным и позволит выделенному сегменту стать темнее после выделения. Вы можете установить белый компонент как угодно.

Пример кода:

UISegmentedControl *aSegmentedControl = [[UISegmentedControl alloc] initWithItems:arrItems];
aSegmentedControl.frame = CGRectMake(55, 382, 210, 32);
aSegmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
aSegmentedControl.selectedSegmentIndex = 0;
aSegmentedControl.tintColor = [UIColor colorWithWhite:80.0/255.0 alpha:1.0];
2
ответ дан 2 December 2019 в 02:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: