【Adobe XD】コンポーネントとは?初心者が抑えておきたい特徴と使い方

Adobe XD

今回は Adobe XD のコンポーネント機能についてご紹介します。

コンポーネントとは

Adobe XD のコンポーネントは、繰り返し使うパーツを編集しやすいように管理することができる機能です。

コンポーネントを使うと、主に次のようなメリットがあります。

  1. 途中で同じパーツの形状を一括して変更することができる
  2. 同じパーツを複数のXDドキュメントに渡ってリンクすることができる
  3. ダミーのパーツを作り込んだパーツへ一括置換できる

1. 途中で同じパーツの形状を一括して変更することができる

「テキスト」と「長方形」で作ったボタンを例にして考えてみましょう。

ただグループ化しただけのボタンは、この形状を途中で変更したくなった時、ファイル内にある全ての同じボタンを手作業で直していかなくてはいけません。

しかしあらかじめボタンをコンポーネントとして登録していれば、一つのパーツを直すだけでファイル内にある全てのパーツを一括して変更することができます。

さらにテキスト内容についてはリンクしないようになっているので、「同じボタンのコンポーネントを使って要所ごとに文言を変更する」といったような使い方も可能です

2. 同じパーツを複数のXDドキュメントに渡ってリンクすることができる

一度作ったコンポーネントは、複数のXDドキュメントに渡って「同じパーツ」としてリンクすることができます。

特に複数人の制作者が関わる大きなプロジェクトの時には、一つのファイルに主要なパーツを揃えておけば、プロダクト全体のデザインを統一したまま同時に作業を進めることができ、とても便利です。

3. ダミーのパーツを作り込んだパーツへ一括置換できる

コンポーネントとして登録したパーツは、別の新しいコンポーネントで上書きすることができます。上書きの方法もドラッグ&ドロップするだけなので簡単です。

この特徴を利用すれば、ワイヤーフレームとして並んでいるダミーパーツを、別途作成した本番用のパーツに一瞬で置換することもできます。

コンポーネントの仕組み

次のようなボタンを例に見ていきましょう。

テキスト16px 中央揃え
パディング[上]16、[右]32、[下]16、[左]32

コンポーネントの作り方はとても簡単です。

アセット登録する全てのオブジェクトを選択した状態で、アセットパネルの「コンポーネント」の右側にある「+」(選択範囲からコンポーネントを作成(⌘))をクリックします。

無事登録されたら、コンポーネントのセクションにパーツのプレビューが表示されます。

一番初めに登録したコンポーネントには、左上に緑色の「♦︎(ダイヤ)」のマークがつきます。これをマスターコンポーネントといいます。

また、マスターコンポーネントをコピーすると左上に白色の「♢(ダイヤ)」のマークがつきます。このマークがついたコンポーネントをインスタンスといいます。

マスターコンポーネントとインスタンスは、編集をする上での親子関係になります。もしマスターコンポーネントの一部を変更した場合、その変更はドキュメント内の全てのインスタンスに引き継がれます。

一方、インスタンスの一部を変更しても、その変更はマスターコンポーネントには反映されません。そのインスタンス独自のスタイルとなります。

そのため制作現場では、主にマスターコンポーネントで基本的なスタイルを作り、必要に応じてインスタンスを編集しながらドキュメントを作り込んでいく方法がよく取り入れられています。

コンポーネントを使った設計のポイント

コンポーネントの仕組みを押さえたら、早速実際のデザイン制作に活用してみましょう。ここでは、その際に気をつけておきたいポイントを4つご紹介します。

  1. マスターコンポーネント専用のアートボードを用意する
  2. マスターコンポーネントは使用予定の全てのオブジェクトを入れて作成する
  3. インスタンスの中にマスターコンポーネント同士を入れ子しない
  4. 制作ドキュメントを複数に分ける場合、マスターコンポーネントは1つのドキュメントに集中させる

1. マスターコンポーネント専用のアートボードを用意する

マスターコンポーネントは編集にかかる影響範囲が広いため、基本的にはデザインするアートボードとは別の場所にまとめて管理するようにしましょう。

小さなことですが、このひと工夫でマスターコンポーネントとインスタンスを見誤る事故をグッと減らすことができます。

またこの時、マスターコンポーネントを表示するショートカットを覚えておくと便利です。コンポーネント編集時に度々アートボードを移動するのは大変なので、コンポーネント作成のショートカットと合わせてぜひ活用してください。

macOSWindows
コンポーネントにする⌘KCtrl + K
マスターコンポーネントを表示Shift + ⌘KShift + Ctrl + K

2. マスターコンポーネントは使用予定の全てのオブジェクトを入れて作成する

編集しやすいドキュメントにするためにも、場所によって出し分けする細かなパーツなどは、インスタンスではなく全てマスターコンポーネント側に含めて作成するようにしましょう。

この時の表示/非表示の切り替えは、オブジェクトの不透明度で制御します

もしインスタンス側で新規に作成してしまうと、マスターコンポーネントはそのパーツに関する情報を持つことができず、ドキュメント内で一括編集ができなくなってしまいます。でもマスターコンポーネント側で作成しておけば、制作途中で修正が入った時にも一つずつ手作業で直す必要はありません

ちなみにマスターコンポーネント自体は少し複雑になってしまう場合が多いため、全てのオブジェクトを表示状態(不透明度0%)に設定してどの要素を入れているかわかるようにしておくのがおすすめです。

3. インスタンスの中にマスターコンポーネントを入れ子しない

コンポーネント同士の入れ子は、時に想定外な動きを招く原因になることがあります。

それぞれの主従関係は次の通りです。覚える必要はありませんが、「まぁ、とりあえず複雑になるんだな」と思っていただければ大丈夫です。

マスター[A]の中のマスター[B]
マスターコンポーネント[A]の編集に伴ったマスターコンポーネント[B]の変形がインスタンス[A]外のインスタンス[B]に引き継がれない
インスタンス[A]の中のインスタンス[B]
インスタンス[B]がマスターコンポーネント[A]の編集の影響を受ける
マスター[A]の中のインスタンス[小]
マスターコンポーネント[A]の中でインスタンス[B]のレスポンシブリサイズの動きがマスター的になる
インスタンス[A]の中のマスター[B]
マスターコンポーネント[B]のレスポンシブリサイズの動きがインスタンス[A]内のインスタンス[B]に引き継がれない

特にマスター・インスタンスいずれかの中にマスターコンポーネントを入れ子すると、マスターコンポーネント自体の管理もしにくくなります。特別な理由がない限りは避けるようにしましょう。

4. 制作ドキュメントを複数に分ける場合、マスターコンポーネントは1つのドキュメントに集中させる

Adobe XD の機能の一つに「アセットをリンク」があります。これを使えば、コンポーネントの情報も複数のドキュメントに渡ってリンクすることができます。

この時、複数のドキュメントに渡ってそれぞれのマスターコンポーネントを作り、コピー&ペーストなどで他のドキュメントに受け渡しをすると、コンポーネント同士の主従関係が複雑になってしまいます。

インスタンスと結びついているマスターコンポーネントも探しにくくなるので、リンクするマスターコンポーネントは必ず特定のドキュメントでのみ作成し、「リンク元」と「リンク先」のドキュメント同士の序列をしっかりと整えておきましょう。

まとめ

コンポーネントをうまく活用すれば、編集しやすいドキュメントが作れるだけでなく、デザインシステムの崩壊を防ぐこともできます。制作時には積極的に取り入れていきたいですね。

まとめ
  1. コンポーネントは、繰り返し使うパーツを編集しやすいように管理することができる機能
  2. マスターコンポーネントが親、インスタンスが子の関係になっている
  3. マスターコンポーネントは使用予定の全てのオブジェクトを入れて作成すると良い
  4. コンポーネント同士の入れ子は極力避ける