Темный режим в Xamarin.iOS

Темный режим — это системный вариант для светлых и темных тем. Теперь пользователи iOS могут выбрать тему или разрешить iOS динамически изменять внешний вид на основе среды и времени дня.

В этом документе представлен темный режим и поддержка темного режима в приложениях iOS 13.

Требования

Для темного режима требуется iOS 13 и Xcode 11, Xamarin.iOS 12.99 и Visual Studio 2019 или Visual Studio 2019 для Mac с поддержкой Xcode 11.

Включение темного режима

Apple предоставляет меню разработчика в iOS 13, чтобы переключаться между темными и светлыми режимами. В симуляторе iOS 13 откройте Параметры и выберите раздел разработчика, а затем прокрутите экран до переключателя "Темный внешний вид". Изменение будет отражено во всей среде симулятора:

Turning on Dark Mode

Ресурсы для светлых и темных режимов

Каталог ресурсов в Visual Studio теперь поддерживает необязательные изображения и цвета для каждого режима внешнего вида: универсальная, темная и светлая. При определении изображений и цветов таким образом iOS автоматически выбирает соответствующее изображение и цвет.

Откройте файл Assets.xcassets в проекте iOS и добавьте новый набор изображений. Обратите внимание, что можно указать универсальные, темные и светлые изображения на любом из целевых разрешений. На снимке экрана ниже представлено изображение для темного и светлого с именем MicrosoftLogo:

Assets for Light and Dark Modes

Assets.xcassets также содержит записи для BackgroundColor и TitleColor, которые являются определениями цветов. Эти цвета теперь доступны по имени для использования в приложении. BackgroundColor был назначен фону представления и TitleColor метке, как показано на этом снимке экрана:

Screenshot shows mobile devices in light and dark mode with different background and title colors.

Динамические цвета системы

Apple представила новые семантические цвета, которые динамически настраивают внешний вид на основе нового параметра темного режима.

Итоги

В этой статье представлен темный режим для iOS и указание изображений и цветов для каждого режима с помощью каталога активов.