как настроить шрифт и цвет фона NSSegmentedControl

Я хочу настроить цвет фона и цвет текста для NSSegmentedControl. Есть возможность сделать это для IOS, но ничего не найдено для OSX.


person Raghav    schedule 25.10.2013    source источник


Ответы (2)


Вы можете установить шрифт напрямую, например:

segmentedControl.font = [NSFont systemFontOfSize:24];

Чтобы установить цвет фона:

segmentedControl.wantsLayer = YES;
segmentedControl.layer.backgroundColor = [NSColor redColor].CGColor;
person northernman    schedule 16.12.2019
comment
Есть ли какой-то конкретный контекст, в котором это работает? Я пытаюсь изменить цвет фона слоя segmentedControl, как вы описываете, но не могу заставить его работать вообще. - person jeff-h; 01.07.2020
comment
Только что перепроверил - работает нормально. Ничего особенного в контексте. XCode 10.1, MacOS 10.13.6 - person northernman; 02.07.2020

По сути, в вашем внутреннем инспекторе атрибутов XIB для сегментированного управления внутри свойства оттенка вы можете установить цвет или то же самое, чего вы можете достичь и программно.

person Hussain Shabbir    schedule 25.10.2013
comment
Любой намек на то, как достичь этого программно? - person Taiki; 29.03.2014
comment
Я думаю, что этот ответ относится только к UISegmentedControl в iOS, а не к NSSegmentedControl для OSX. Документы Apple не показывают результатов при поиске цвета в NSSegmentedControl или NSControl, от которого он наследуется. См. developer.apple.com/library/mac/ документация/Какао/Справочник/ - person Winter Dragoness; 18.04.2015