Exercise2 モバイルでクーポン一覧画面を作ってみよう

# 目次
1. はじめに
1. お題1
1. お題2
1. お題3

# はじめに
Exercise1では、デザインデータを元によく使うWidgetを使って画面を作成していきました。

今回の演習問題では、
あるWidgetを使って一覧画面を作っていきましょう！

アプリでよく登場する一覧画面ですので、
作成方法をしっかりと学んでいきましょう。


# お題1
早速お題です！
デザインチームから一覧画面のデザインが届きました。
デザインに沿って画面を作成してください。

一覧のデザインを作成するにはどのWidgetを使えば良いでしょうか？
既存のQiita記事や、Konyの公式ドキュメントを参考にしながら解いてみましょう！

<u> 制限時間：90分 </u>

## 完成イメージ

![IMG_5F55E0456C48-1.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/1c81162f-5d16-1f18-2856-7713b609e2e3.jpeg)
<font color=gray>（"Freepik.com"このカバーはFreepik.comのリソースを使用してデザインされています。）</font>

## 素材
**画像**
画像とアイコンはこちらからダウンロードして使用してください。
| 画像 | ロゴ |進む|戻る|
|:-----------|:------------|------|------|
|![spicy-red-soup-beef-noodle-bowl-wooden-table.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/d2bd8f63-dd5f-b588-9655-6ff429e69752.png)|![ramen_icon.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/1a185299-2cc5-28d1-6050-44b1eddbcacf.png)|![chevron_right-24px.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/8f4e11d2-6d52-c2f3-5955-47ccba975815.png)|![icon_left.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/1e67e2a7-5054-f4e1-c548-1153a12847f7.png)|


**カラーコード**
画面で使用されいる色については、
カラーコードをご参考ください。
![スクリーンショット 0004-08-01 11.09.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/0aa7e884-fb91-265b-f1ea-f0b34a36c8ca.png)

**フォント**
- デザインに使用されている`NotoSans`フォントはデフォルトに入っていないフォントです。
外部フォントのインポート方法は、こちらを参考にして作成してください。
※Exercise1でインポート済みの方はスキップしていただいて大丈夫です。
▶︎[Kony Visualizerに外部フォントを取り込む](https://qiita.com/Kony_Team/items/0b62fee0a257e0209e88)

- それぞれのフォントサイズ・カラーを記載しています。
※以下はpxで表記していますが、モバイルの場合Visualizerでpx指定をすると、
想定より小さめに表示されるため、文字サイズは参考程度にご覧ください。<br>
Visualizerでの実装時、**フォントサイズは%指定**とし、
デザインファイルと同様のフォントサイズになるよう調整をしてください。<br>![スクリーンショット 0004-08-02 17.16.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/64dc62a3-91b9-64d1-a521-de1d66f549c9.png)

|No |フォント・サイズ |文字色  |背景色|
|---|---|---|--|
|1|NotoSansJP Bold 14px|FFFFFF|-|
|2|NotoSansJP Bold 12px|050C1E|-|
|3|NotoSansJP Bold 24px|050C1E|-|
|4|NotoSansJP Medium 12px|858A9B|-|
|5|NotoSansJP Regular 12px|050C1E|-|

## お題1の解説

お題1は完成しましたか？
下記のリンクに解説を書いていますので、できた方からチェックしていきましょう:eyes:

▶︎[お題1解説](https://qiita.com/Kony_Team/items/3e68b0fa9ea5ef0f5d2e)

# お題2
続いて、今度は一覧に表示するデータをMasterDateで固定値を指定する方法ではなく、
実際にAPIからデータを取得して表示することを想定し、
ロジック上にダミーデータを用意して、Javascriptで一覧表示させるロジックを書いてみましょう。

表示するデータは、下記の完成イメージを参考にしてください。

ロジックは、
フォームのContollerにJavascriptで書いていくことができます。
![スクリーンショット 0004-08-03 15.09.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/7f789b53-1922-6bc3-f621-67425952fb01.png)

制限時間：90分

## 完成イメージ
![IMG_0939.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/638ce9ef-c7ab-77ae-bc86-46a8ce645b72.jpeg)
<font color=gray>（"Freepik.com"このカバーはFreepik.comのリソースを使用してデザインされています。）</font>

## 素材
**画像**
画像とアイコンはこちらからダウンロードして使用してください。
| pork_ramen.png | thai_ramen.png |
|:-----------|:------------|
|![pork_ramen.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/27255b78-5837-c2d0-2b2a-581bfd132595.png)|![thai_ramen.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/6941c61c-4581-1b75-349f-041826279c14.png)|


## お題2の解説

お題1は完成しましたか？
下記のリンクに解説を書いていますので、できた方からチェックしていきましょう:eyes:

▶︎[お題2解説](https://qiita.com/Kony_Team/items/538d9ce5264b5302927d)

# お題3
一覧の各項目をタップしたら、その商品の詳細画面に遷移するよう、
Javascriptでデータの受け渡しロジックを作成してください。

- 詳細画面は、Exercise1で作成した画面を表示するようにしましょう。
- 各一覧の項目をタップし、その対象データの詳細画面に遷移するよう実装してください。
- 詳細画面では、一覧画面には表示されていない
各項目に応じた詳細データも表示するようにしてください。

ロジックについては、フォームのControllerに書くことができます。

![スクリーンショット 0004-08-01 12.20.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/06ac1add-add5-4584-42a5-276bb9199701.png)

制限時間：120分

## 完成イメージ
各一覧の項目に応じた詳細データを表示できていれば、
表示するデータの内容は完成イメージの通りでなくてもOKです。
![ezgif-2-fead286fbe.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/7570b101-5065-1b12-3c9e-1c804de086ec.gif)

## お題3の解説

お題1は完成しましたか？
下記のリンクに解説を書いていますので、できた方からチェックしていきましょう:eyes:

▶︎[お題3解説](https://qiita.com/Kony_Team/private/91e3d6752e6398d8b4d2)

# 答え
３問全て解けましたか？
今回の演習問題のサンプルプロジェクト貼っておきますので、
うまくいかなかった方は参考にして繰り返し復習するようにしましょう！

▶︎[Exercise2_サンプルプロジェクト](https://github.com/konyqiitadev/Answer2)

【プロジェクトを開く時の注意点】
上記のサンプルプロジェクトを開く時は、
リポジトリをクローンして、Visualizerを開くようにしてください。
（zipファイルをダウンロードしてもVisualizerでプロジェクトを開くことができないため。）
![スクリーンショット 0004-07-25 13.36.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592264/9cdc9530-7da5-cf37-cb0b-ea2f4c8f4207.png)


# 次の記事

次は多言語対応のi18n機能について学んでいきましょう！
▶︎[i18nを使って多言語対応をしてみよう](https://qiita.com/Kony_Team/items/463ecc8dd3ee313adcc2)


記事一覧：
https://qiita.com/Kony_Team/private/4c922fa016ce95c58406

# 最後に一言
より読みやすい記事にしていきたいので、
「ここがわからなかった！」
「ここがもっと知りたい」
など、コメントいただけると嬉しいです！