ここ数週間の噂に注目すると、その中には先週木曜日、2月7日のアプレリアノスのポッドキャストでマーク・ガーマンが行った発言も含まれる(そこでは監督のペドロ・アズナールとあなたに手紙を書いているこの人も彼をインタビューしたグループの一員だった) ,ダークモードは、バージョン 13 でついに iOS に登場します。 macOS にはすでに存在するダーク モードで、開発者の反応と、ダーク モードを実装するかどうかを確認するために、ユーザーが少ないシステムでの機能テストであることは明らかです。
しかし、大きな疑問は「ダークモードとは何ですか?」ということです。単に黒い背景とクリアなフォントを配置しているだけですか、それともその背後に何かがあるのでしょうか?ダーク モードに適応するために開発者とデザイナーが何をしなければならないのか、ダーク モードがどのように機能するのか、そして実際は何なのかを説明します。
ダークモード、2つのビジュアルスタイルを作成
私たちが考えるかもしれないことに反して、アプリでダーク モードを使用することは簡単ではなく、画像レベルであっても2 つの完全に異なるカラー デザイン (場合によっては 3 つ) を作成する必要があります。そして、それは逆に、Apple が私たちにこうするように指示するデザインではありません。 Apple は、「ライト」と「ダーク」という 2 つの視覚スタイルを管理するツールのみを提供しています。ダーク モードをサポートしないシステムで使用されるAnyスタイルもあります。
これを管理する方法を知るには、Xcode (Apple の公式開発ツール) で作成されたネイティブ アプリの開発に不可欠な要素であるアセットカタログにアクセスする必要があります。このカタログは、App Store にアップロードされるとアプリの一部となる多数のグラフィック リソースやファイルを保存できる、非常に特殊な構造を持つフォルダーで構成されています。ここでは、使用するアイコン、画像フォルダー、ドキュメント、ゲームまたは 3D 用のテクスチャ、2D ゲーム用のスプライト アトラス、Apple TV 用のレイヤー化されたアイコンなどを作成できます。私たちが作成できるものの 1 つは色です。

デザインに取り組む場合、アプリの重要な要素の 1 つは色です。Xcode を使用すると、色をリソースとして作成し、画面の種類に応じて sRGB または DCI-P3 (デジタル シネマ カラー) の名前と色空間を指定できます。私たちは使用するつもりです。その色は、背景、フォント、または任意の視覚要素に適用できます。
そのため、リソース内で色を作成し、それをプログラムでリソースとして読み込むことと、デザイン ビューで背景から任意のテキスト、コンポーネント、要素に至るまで、任意の視覚要素に割り当てることによって、それをアプリ内で使用することができます。色を作成するとき、明るいバージョンと暗いバージョンがあることをシステムに伝えるように構成できます (どちらも外観の概念に基づいています) 。 「壁紙」と呼ぶ色を作成し、それに白またはほぼ白(いわば)の特定の組み合わせを割り当てた場合、それを「明るい」として割り当ててから、暗い色調(ほぼ白)に別の異なる色を作成します。 black) をその「ダーク」バージョンと同じ名前にします。

このようにして、アプリが動作するときに色を読み込み、オペレーティング システムのモードに応じて、その色を動的に呼び出すことによって「明るい」バージョンまたは「暗い」バージョンを返します。したがって、デザイナーはアプリ用に 2 つの異なる色構成を作成し、それらが視覚的に適切に組み合わされることを確認する必要があります。あるいは、 Any バージョンとダークバージョンを作成して、システムでダーク モードがサポートされている場合はAny がライトモードに使用され、サポートされていないシステムでは通常のカラーにも使用されます。または、前に述べたように、システムが 2 つのカラー テーマのどちらかを選択する機能をサポートしていない場合は、3 つの組み合わせを使用して、明るいときに別の色を選択することもできます。
画像では、多くの場合、ダーク モードを使用することも重要です。黒い文字と透明な背景を使用した会社のロゴがあると想像してみましょう。ダーク モードを有効にすると、そのロゴが機能しないことは明らかです。色の反転を探して、黒になっているタイポグラフィに白を使用する必要があります。このため、Apple は、同じ名前で、 light 、 dark 、またはAnyの異なるバージョンの画像を提供できるようにしています。このようにして、アクティブ化されたモードに応じて、何も変更することなくどちらかが選択されます。

Apple は、アプリのダーク モードを希望どおりに設定するためのガイドラインを長い間提供してきました。ただし、これらは視覚的なレベルのガイドです。なぜなら、すでにご存知のとおり、システムはまだこのモードをサポートしていないためです。以下で明らかにしていきます。
ダークモードは親です
ダークモードについては何年も前から聞かされてきました。しかし実際には、Twitter や Things などの一部のアプリが実証しているように、このモードはどのアプリでもいつでも好きなように実装できるものです。インターフェースの唯一の形式としてダーク モードを使用する人さえいます。 Apple 自体も数か月前にベストのセレクションを作成しており、 ここで参照できます。しかしそれだけではありません。この記事でご覧になったスクリーンショットは、すでにサポートされている iOS プロジェクトで私が個人的に作成したものです。システムによるものではありませんが、アセットカタログの動作方法によるものです)。
これは、Xcode 10 の登場以降、ダーク モードが到着すると自動的にアクティブになるように、どのアプリもすでに準備できることを意味します。Xcode はすでに適応されているため、Xcode が適応するまで待つ必要はありません。唯一の問題は、Mac にも適用されるユニバーサル プロファイルを選択した場合にのみ、明るいまたは暗い外観モードが表示されることです。iPhone または iPad 固有のプロファイルをアクティブにしても、異なる外観が得られません。しかし、これは小さな追加にすぎず、ユニバーサル構成 (通常は標準です) を使用する場合は、すでに準備が整っているはずです。
では、ダークモードとは何でしょうか?そうですね:有名なダーク モードは、ユーザーがライト モードとダーク モードのどちらを選択したかをアプリに伝えるシステム値にすぎません。他には何もありません。 (たとえば) アプリを起動して Twitter をしているとき、ユーザーがダークモードを選択したかどうかを保存する必要があるのは私です。そして、この側面を変更するには、私のアプリでそれを行う必要があります。 iOS 13 以降では、システム全体に一般的なスイッチ (現在の macOS と同様) があり、Twitter に入るとアプリが次のように尋ねます: 自分自身をどのモードで表示しますか?そしてシステムは答えます。
実際、これが必要でない場合もあります。これは、これまで説明した色ツールと画像ツールを使用していれば、開発者がコードを 1 行も触れなくても、アプリが自動的に設定されるためです。アセットカタログ構成を自動的に使用するだけです。
したがって、ダーク モードが Apple が世界から隠してきたものであるとか、アクセシビリティの有名なスマート反転モードがダーク モードであるとは考えられません。それはそうではありません。これは、明るい光に敏感な人のためにシステムが逆色を計算するための単なる方法です。しかし、これは実際に適応したものではなく、各アプリのデザイナーが監修したものでも、各企業のデザイン上の決定に対応したものでもありません。

したがって、ダークモードは、デザイナーが使用できるように Xcode に組み込まれた単なるツールであり、アプリはあるモードから別のモードに自動的に変換します。それ以上のものではありません。システムに自分がどのモードにあるかを尋ね、その答えに基づいてさまざまな操作を実行できるオプションがあります。また、各アプリがライト モードまたはダーク モードを表す色を自由に選択できるようになります。
ハイブリッド アプリまたは非公式ライブラリの問題
ダーク モードは、公式 Apple Cocoa Touch ライブラリで作成されたアプリによってのみサポートされ、説明されているこれらのツールはすべて Xcode でのみ動作します。 Ionic、Xamarin などの他のテクノロジやライブラリでは機能しません。これらのハイブリッド ライブラリでは、開発者が Xcode と同様に各モードの画像や色を指定できるようにする独自の方法を構築する必要があります。特に Android 10 (または Android Q) には、Apple と同様の方法でダーク モードが組み込まれる予定ですが、それは公式 SDK に対してのみです。

これらの書店ができる唯一のことは、自分がどのモードにあるかをシステムに問い合わせて、それに応じて行動することですが、それには(これらの書店の背後にある企業やコミュニティが興味を持っている場合には)それに対応する必要があり、それには時間がかかり、維持する必要があります。ダーク を選択したとき、アプリをライトモードで数か月間使用しました。各アプリは適応する必要があり、適応しない場合は通常モードを使用し続けるためです。また、それを作成したライブラリがダーク モードをサポートしていない場合は、独自の方法で設定するか、更新されるのを待つことになります。
確かに、 Apple が前述のスマート リバース モードと同様のスマート モードを有効にして、対応していないアプリが「疑似ダーク モード」で表示されるようにする可能性はありますが、それが本当に効果的であるかどうかはまだ不明です。
ダークモード、iOS 13でほぼ避けられない改善
ダーク モードは間違いなく (多くの人にとって) よりエレガントで、目が疲れにくいです。 OLEDスクリーンによりバッテリーの消費も節約されます。しかし、オフになっている OLED ピクセルはオンになるときに大きな遅れがあることを忘れてはなりません。つまり、 OLED スクリーン上のピクセルがオフになっていると、色の変化よりもオンになるまでの時間が長くなります。これは、サムスンが製造し、アップルを含むさまざまなブランドが使用している現在のモバイル画面のダイヤモンド構成と相まって、一部のサブピクセルが異なるピクセル間で共有されており、OLED が中間段階にあることを示す奇妙な照明効果を生み出します。比較的言えば LCD よりも優れていますが、欠点もあり、多くの人が考えているような未来の技術ではありません。

そのテクノロジーはMicroLEDで、各ピクセルが独立して点灯し、各色ごとに 3 つのサブピクセルがあり、その背後にあるのは、本物の黒を可能にする小さなサイズの従来の LED で、変化と同じ速度でオンになります。色と明るさの向上(OLED のもう 1 つのアキレス腱)は、3,000 nit 以上に達する可能性があります。
しかし、目前の話題に戻ると、ダーク モードは間違いなく今年良い追加となるでしょうし、それがどのように機能し、実装されるかはすでにわかっています。確かに、大きなアプリは iOS 13 のリリース 0 日目に向けてすべての準備を整えており、残りは少しずつ完了するでしょう。しかし、私には疑問がありますが、ハイブリッドフレームワークで作られた疑わしい品質の膨大な数のアプリ (その多くはサービス) が確実にこの話題を通過するのではないかと考えていますが、まあ、それらにチャンスを与えましょう。
