Я назначаю пользовательский цвет из моего Colors.xcassets (который имеет два значения цвета: одно для светлого, другое для темного режима) моей панели навигации, используя этот метод:
[self.navigationController.navigationBar setBarTintColor: ...;
.
По какой-то причине панель навигации принимает значение цвета только для темного режима, даже когда приложение запускается или переключается в светлый режим. Он всегда использует более темный синий оттенок:
Когда я устанавливаю этот цвет для других объектов, он работает так, как должен работать. Поскольку я не нашел темы, описывающей эту проблему, я совершенно не понимаю, как я могу ее решить. Это происходит как в iOS13, так и в iOS14.
Заранее спасибо,
Bastian
Создайте два цвета, скажем
navTint
иnavBack
, и установите их следующим образом. Обратите внимание, что я установил их на панель навигации, а также на панель инструментов.Вопрос касается темного режима, ваш ответ, похоже, не нацелен на это. — person rabbfischer; 22.10.2020
Эти цвета —
navTint
иnavBack
— будут иметь вариацию темного режима. — person rabbfischer; 22.10.2020То, как работает OP, должно работать, и я не думаю, что это проблема темного режима. OP, конечно, устанавливает только оттенок полосы, в то время как мое предложение правильно устанавливает оттенок полосы и элементов. Я думаю, что здесь я пытаюсь показать OP, как правильно и полностью установить цвета, а не пытаться выяснить, как iOS исчезает и меняет цвета OP между темным и светлым режимами, надеясь, что это решит проблему или, по крайней мере, поможет в правильном направлении — но никогда не слышал, работает ли это для цветов OP … — person rabbfischer; 22.10.2020