yumemi-inc / android-training-template

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Viewで詳細画面を作成する

Seo-4d696b75 opened this issue · comments

🖥️ 詳細画面を追加してメイン画面から遷移できるようにします

Note

Required(先に完了させましょう)

Next(次に取り組みましょう)

  • 任意課題
    #30

課題内容

  • 詳細画面のFragmentを追加する
  • メイン画面の「Next」ボタン押下で詳細画面に遷移する
  • メイン画面で表示していた都市名を詳細画面でも表示する
  • 戻るボタン押下でメイン画面に戻る

詳細画面のレイアウト

以下の条件を満たす範囲で自由にレイアウトを組んでください

  • 地点名を表記する
  • 天気予報を3時間ごとにリスト表示する

Tip

リスト表示にはRecyclerViewもしくはListViewを利用します

image

リストの各要素に表示する

  • 日時
  • 天気アイコン
  • 気温

image

Fragmentの画面遷移

Fragmentを追加したり、移動するにはFragmentManagerを利用します。戻るボタンで元の画面に遷移できよう、BackStackにトランザクションを積んでおきましょう。

Fragmentに引数を渡す

Warning

Fragmentのコンストラクタに引数を渡す方法は正しく動作しない場合があります。Activity同様にFragmentもAndroidシステムによって破棄&再生成される場合がありますが、再生成時は引数なしコンストラクタが呼ばれるためデータが失われてしまいます😰

代わりにBundleを利用します

val fragment = YourFragment().apply {
    arguments = bundleOf(
         "key" to "value",
    )
}

完成イメージ

天気予報のリスト表示は空もしくはダミーデータで大丈夫です

image

参考資料