モーション
すべてのプラットフォームで、美しく滑らかな動きがインターフェースに命を吹き込み、ステータスを伝え、フィードバックと指示を提供し、視覚体験を豊かにします。
システムコンポーネントには自動的にモーションが含まれるため、あなたのアプリやゲーム全体で、使い慣れた一貫した体験を提供できます。カスタムモーションをデザインするときは、人々の方向性を維持し、行動に応じて明確なフィードバックを提供し、圧倒されることなくインターフェイスを学習できるようにする意図的なアニメーションに焦点を合わせます。
ベストプラクティス
モーションを使用して伝えます。 モーションは、物事がどのように変化するか、人々が行動を起こしたときに何が起こるか、そして次に何ができるかを示すことによって、フィードバックと理解を高めるための優れた方法です。たとえば、macOS で人々がウィンドウを最小化すると、デスクトップから Dock にスムーズに移動するため、ウィンドウがどこに移動したかを正確に知ることができます。人々が FaceID を設定すると、システムは彼らが何をすべきかを簡単に説明し、顔を囲むチェックマークを視覚的に変更することでスキャン中に彼らを助けます。
意図的にモーションを追加し、影を落とすことなく体験をサポートします。 モーションを追加するためにモーションを追加しないでください。不必要なまたは過度のアニメーションは、特に没入型の体験を提供しないアプリでは、人々の気を散らしたり、切断されたように感じさせたりします。
モーションをオプションにします。 スクリーン上のアニメーションが表示されない理由はいくつかあるため、重要な情報を伝達する唯一の方法として使用しないようにすることが不可欠です。たとえば、[モーションを減らす] アクセシビリティ設定がオンになっている場合は、アニメーションを最小化するかまたは削除してください。ガイダンスについては、色と効果 を参照してください。
リアリズムと信頼性を追求します。 正確でリアルなモーションは、何かがどのように機能するかを人々が理解するのに役立ちますが、モーションは意味をなさない、または物理法則に反しているように見えるモーションは、混乱を感じさせる可能性があります。たとえば、誰かがスクリーンの上部から下にスライドしてビューを表示した場合、横にスライドしてビューを閉じることは期待していません。
迅速で正確なアニメーションが望ましいです。 簡潔さと正確さを組み合わせたアニメーションは、より軽量で邪魔にならない感じがする傾向があり、多くの場合、より効果的に情報を伝達します。たとえば、iPhone の Weather でリストボタンを人々がタップすると、現在の都市の全画面表示がリストビューにすばやく移行し、リスト内の都市の場所が特定されます。
一般に、頻繁に発生する操作にモーションを追加することは避けてください。 システムは、標準のインターフェース要素の操作のために微妙なアニメーションをすでに提供しています。何かを操作するたびに、不必要なモーションを見るのに人々が余分な時間を費やすことは避けてください。
プラットフォームの考慮事項
iOS、iPadOS、macOS、または tvOS の追加の考慮事項はありません。
watchOS
SwiftUI は、あなたのアプリにモーションを追加する強力で合理化された方法を提供します。WatchKit を使用してレイアウトと外観の変更をアニメーション化する必要がある場合、またはアニメーション化されたイメージシーケンスを作成する必要がある場合は、以下のガイドラインに従ってください。
注意
すべてのレイアウトと外観を基礎にしたアニメーションには、アニメーションの開始時と終了時に再生される組み込みのくつろぎが自動的に含まれます。くつろぎをオフにしたりカスタマイズしたりすることはできません。
WatchKit を使用すると、あなたのアプリの UI 要素の以下の属性への変更をアニメーション化できます。
WatchKit ではまた、時間の経過とともに連続して表示される 2 つ以上の個別のイメージで構成される、アニメーションイメージシーケンスを作成することもできます。シーケンス内の各イメージはアニメーションの単一フレームを構成し、実行時に再生動作を変更しない限り、アニメーション全体がループで実行されます。アニメーションイメージシーケンスは、主にインターフェイスのイメージ、グループ、ボタン要素にインストールして下さい。
イメージおよびグループ要素のアニメーションシーケンスの再生速度、方向、およびフレームレートをプログラムで制御できます。他のインターフェイス要素は、アニメーション全体を無限ループで表示します。
可能な場合は、あなたの watchOS アプリバンドルにイメージを保存します。 あなたの watchOS アプリバンドルにイメージを保存すると、それらのイメージのロードと実行時のアニメーションの表示の遅延が最小限に抑えられます。この手法は、あなたのアプリのデザインの一部であるアニメーションに使用して下さい。
イメージシーケンス内のすべてのイメージを最適化します。 最適化されたイメージは、ディスク上のスペースを節約し、状況によってはより高速にロードします。
順方向と逆方向のアニメーションに同じイメージシーケンスを使用します。 実行時に、イメージシーケンスを逆の順序でアニメーション化できるため、重複するイメージのセットを逆の順序で提供する必要がなくなります。この手法を使用すると、あなたのアプリのサイズが小さくなります。
リソース
関連
開発者用文書
ビデオ
流れるインターフェース
のデザイン
WWDC 2018