Изменить: на основе разговоров ниже мое замешательство было связано с тем, что не все системные цвета совместимы со старыми операционными системами, в моем случае метка и цвета systemBackground - это только iOS13, для которой требуется резерв. Теперь это имеет смысл.
У меня есть приложение, поддерживающее iOS11, но я хочу предоставить темный режим пользователям с iOS13.
В Xcode 11 / iOS13 вы можете указать системные цвета для темного режима с резервным вариантом для более старых операционных систем, как показано ниже ...
if #available(iOS 13.0, *) {
view.textColor = UIColor.label
} else {
view.textColor = UIColor.black
}
Если я попытаюсь использовать цвет без резервной копии для более старых систем, я получаю сообщение об ошибке, которое ... отчасти имеет смысл, я говорю отчасти потому, что в документации указано, что system colors (StandarColors)
поддерживаются в iOS 7.0+
.
Забавно то, что если я использую новые системные цвета непосредственно из инспектора атрибутов, я не получаю сообщение об ошибке, поэтому мой вопрос ...
1- Что происходит, когда вы используете новые системные цвета непосредственно из инспектора атрибутов, когда вы не получаете ошибки при их выборе?
2- Что пользователь с iOS11
увидит в представлении, где цвет label
был напрямую выбран из инспектора атрибутов?
Спасибо