Xamarin.iOS のダーク モード
ダーク モードは、ライトおよびダーク テーマに対するシステム全体のオプションです。 iOS ユーザーは、テーマを選択したり、環境や時間帯に基づいて iOS が外観を動的に変更するのを許可したりできるようになりました。
このドキュメントでは、ダーク モードと、iOS 13 アプリケーションでのダーク モードのサポートについて説明します。
要件
ダーク モードを使用するには、iOS 13 および Xcode 11 と、Xamarin.iOS 12.99 と、Xcode 11 がサポートされた Visual Studio 2019 または Visual Studio 2019 for Mac が必要です。
ダーク モードを有効にする
Apple は、iOS 13 においてダーク モードとライト モードを切り替えるための開発者メニューを提供しています。 iOS 13 シミュレーターで、[設定] を開き、[開発者] セクションを選択してから、[ダークな外観] スイッチまでスクロールします。 変更はシミュレーター環境全体に反映されます。
ライトおよびダーク モードのアセット
Visual Studio のアセット カタログで、外観モード (ユニバーサル、ダーク、ライト) ごとにオプションのイメージと色がサポートされるようになりました。 使用するイメージと色をこのように定義すると、iOS によって適切なイメージと色が自動的に選択されます。
iOS プロジェクトで Assets.xcassets ファイルを開き、新しいイメージ セットを追加します。 ユニバーサル、ダーク、ライトのイメージをターゲット解像度のいずれかで指定できることに注目してください。 次のスクリーンショットには、"MicrosoftLogo" という名前で、ダークおよびライトに対応するイメージがあります。
Assets.xcassets には、色の定義である BackgroundColor と TitleColor のエントリも含まれています。 これらの色は、アプリケーション全体で使用される名前で利用できるようになりました。 次のスクリーンショットに示すように、BackgroundColor はビューの背景に、TitleColor はラベルに割り当てられています。
動的なシステムの色
Apple は、新しいダーク モード設定に基づいて外観を動的に調整する新しいセマンティック カラーを導入しました。
まとめ
この記事では、iOS 用のダーク モードについてと、アセット カタログを使用してモードごとにイメージと色を指定する方法について説明しました。