Темный режим запуска экрана в iOS 13

Я обновил свое приложение iOS для работы в темном режиме на iOS 13, но у меня возникают проблемы при попытке заставить экран запуска выглядеть хорошо.

В настоящее время это яркий белый экран с логотипом приложения, который в темном режиме выглядит ужасно. Я попытался установить цвет фона экрана запуска так, чтобы он был цветным активом, который я сделал, когда "Любой внешний вид" - белый, а "Темный вид" - черный, но экран запуска по-прежнему всегда отображается белым.

Есть ли способ заставить мой экран запуска нормально работать в темном режиме?

Ответы

Ответ 1

При настройке раскадровки на Launch Screen установите для цвета "Background" вида "System Background Color". Это будет белый в светлом режиме и черный в темном режиме. Нет необходимости использовать свой собственный цветовой актив.

Ответ 2

Мне не хватало цветов из моей цветовой палитры в XCode, по умолчанию предлагаемые цвета, поэтому я создал свой собственный, используя Color.xcassets, где я создал собственный набор цветов с появлениями Any, Dark и установил свои цвета.

enter image description here

Затем я могу использовать их в автоматическом режиме так же, как системные цвета, даже в LaunchScreen

enter image description here

Ответ 3

Я нашел решение, которое поддерживает более ранние версии iOS, а также настраиваемые цвета для каждого режима, темного и светлого, в iOS 13.

  1. Создайте актив изображения, установите "Появления" на "Любой", "Светлый", "Темный" и загрузите небольшие сплошные png файлы нужных цветов. В этом случае я использую оранжевый для светлого и черный для темного.

актив изображения

  1. Перейдите к вашей LanuchScreen.storyboard и добавьте вид изображения с этим активом изображения. Поместите изображение за логотипом изображения, установите для параметра "Режим содержимого" значение "Заполнение аспектом" и ограничьте вид Superview со всех сторон. (Убедитесь, что ваш логотип хорошо смотрится на двух фонах, или установите его внешний вид тоже)

  2. Это где я должен был сделать трюк. По какой-то причине я не смог сделать заднее изображение, чтобы показать. После проверки некоторых комментариев в раскадровке Launch Screen, не отображающей изображение, я добавил первое изображение в активе изображения в целевой комплект

Цвет статичен в старых iOS и хорошо работает с темным и светлым режимами в iOS 13.