Цвет оттенка iOS 7.1 по умолчанию не меняется для UISwitch

Я установил цвет оттенка по умолчанию в своей раскадровке, но я получаю старый синий цвет по умолчанию для моего компонента UISwitch.

Поэтому я попытался поставить

[[UIView appearance] setTintColor:APPCOLOR];

внутри моего метода делегата приложения

- (void)applicationWillResignActive:(UIApplication *)application

но все равно не повезло, я тоже пытался поставить туда

[[UISwitch appearance] setTintColor:APPCOLOR];

и снова без изменений.

APPCOLOR определяется в моем файле const.h, который я, конечно же, включаю.

Как я могу установить этот цвет оттенка моего UISwitch глобально?

Цвет оттенка других элементов, например UIButton, меняется правильно.


person Majky    schedule 02.05.2014    source источник


Ответы (1)


Цвет оттенка UISwitch управляет цветом границы. Если вы хотите установить цвет включения, вам нужно использовать onTintColor.

Прочтите здесь документацию о том, что эти оттенки цвета представляют для UISwitch.

введите здесь описание изображения

Кроме того, вы не должны устанавливать внешний вид в методе делегата applicationWillResignActive:. Это вызывается, когда приложение выходит из активного состояния. Вы должны установить внешний вид в application:didLaunchWithOptions:.

person Leo Natan    schedule 02.05.2014
comment
Отличный ответ! Спасибо. - person tonymontana; 28.12.2015