Sketch ファイルからコード生成を行う場合、Sketch ファイル上のレイアウト設定が正しく行われていないと崩れが発生してしまいます。簡単なログイン画面の作成を通してレイアウトの基本を解説します。
作成サンプル
以下のような画面をコードジェネレーターを通してコード生成します。
![](https://kb.jp.infragistics.com/wp-content/uploads/2020/04/1e9c7c4519e1c6714e5da00e575cc3ce.gif)
今回実装しているレイアウトのポイントは以下の4つです。
- 横幅100%の Navbar コンポーネント
- 固定サイズのログインパネル
- ログインパネルの上下左右中央揃えのレイアウト
- コンポーネント単位のグループ化
1. 横幅100%の Navbar コンポーネント
![](https://i0.wp.com/kb.jp.infragistics.com/wp-content/uploads/2020/04/3ade32103bec27608cd8911b5daea083.png?fit=980%2C141&ssl=1)
今回の例では左右と上辺に対してのピン固定設定と高さの FIX (つまり横幅はフレキシブルとなる)設定をしています。
2. 固定サイズのログインパネル
![](https://i2.wp.com/kb.jp.infragistics.com/wp-content/uploads/2020/04/8c505bacdc4ae1d242424416af5f59cb.png?fit=980%2C264&ssl=1)
ログインパネルは高さ、横幅ともにサイズを固定しています。
この場合、コード生成の際に scss 側で width と height に設定値が反映されます。
3. ログインパネルの上下左右中央揃えのレイアウト
![](https://i0.wp.com/kb.jp.infragistics.com/wp-content/uploads/2020/04/efe5c4e1ea054bfeadacbcdf281cae6d.png?fit=980%2C698&ssl=1)
中央寄席のレイアウトを行うためには、固定サイズのコンポーネントを親グループもしくはアートボードの中心となるように配置します。しかし、このサンプルの場合は上部に Navbar を配置してあるため、Navbar を除いた領域の中心に配置します。(垂直方向のみ、水平方向のみの中央寄せの場合も設定方法は同じです。)
4. コンポーネント単位のグループ化
![](https://i0.wp.com/kb.jp.infragistics.com/wp-content/uploads/2020/04/f6b3255d6d4654106bf6fd3dbccb87f9.jpg?fit=980%2C515&ssl=1)
Sketch 上で作成された1グループに対して1コンポーネントと解釈してコード生成が行われるため、Sketch 作成時はコード生成された時のコンポーネント設計に基づいてグループを作成するように注意します。
レイアウトに関しましては、こちらのヘルプも併せてご覧ください。
レイアウトのベスト プラクティス
上記の Sketch サンプルは以下よりダウンロードいただけます。