100 Days of SwiftUI【Day 41〜Day 45】
こんにちは、白くまコージです!
iOSアプリを開発できるようになるため、Swiftを勉強中です。
100 Days of SwiftUIのDay 41〜Day 45が完了したので、ここに記録を残します。
学習記録
Day 41 – Project 8, part 3
学習時間
60分
学んだこと
- mapを使って配列の全要素に同じ処理を適用する方法
- NavigationLinkを使って新しいViewに遷移する方法
感想
Project 8の実装パートです。part 3はこれまではチャレンジパートでしたが、今回のアプリは規模が大きいため実装パートが2つに分かれています。
NavigationLinkを使うと画面間の遷移が簡単に実装できることがわかりました。今回のアプリのように「一覧→詳細」となる画面構成の場合は積極的に利用していきたいですね。
mapを使う箇所については、もう少し細かく説明してほしかったですね。自分で調べた結果、配列から要素を取り出して全てに対して同じ処理を適用したい場合に使うみたいです。これはかなり便利そうなので、覚えておきたいと思いました。
最後に、やはりデザインは難しいと感じました。自分で同じような見栄えのいいデザインができる気がしません。
Day 42 – Project 8, part 4
学習時間
90分
学んだこと
チャレンジパートのため、以下の課題に挑戦しました。
- 日付テキストをフォーマットした状態で追加する
- Viewを新しいSwiftUI Viewコードに切り出す
- 項目をグリッドまたはリストで表示する選択肢をツールバーに追加する
感想
Project 8のチャレンジパートです。
最近のチャレンジはとても難しいですが、なんとか実装できました。
やはりデザインが意図通りにいかなくて難しかったです。
またScrollView、List、Formあたりの使い分けがいまいちわからなくなっています。もっと使ってみて、自分の中に落とし込んでいきたいです。
Day 43 – Project 9, part 1
学習時間
20分
学んだこと
- 単純なNavigationLinkの問題点
- navigationDestinationの使い方
- Hashableプロトコルへの準拠方法
感想
Project 9の解説パートです。
今回はやけに短かったです。20分で完了してしまいました。
navigationDestinationのmodifierをNavigationLinkではなく一個外側のListにつける理屈がよくわからなかったです。SwiftUIのViewの構成がちゃんと理解できていないからだと思うので、もっと理解を深めていきたいです。
Day 44 – Project 9, part 2
学習時間
50分
学んだこと
- NavigationStackを使ったコードによるナビゲーション
- NavigationPathを使ったナビゲーション
- NavigationStackでルートViewに戻す方法
- NavigationPathの保存方法
感想
Project 9の解説パートです。
NavigationStack内のViewからnavigationDestinationにどうやって値が渡されるのかがよく理解できませんでした。NavigationLink内のvalueが渡されるのだとしたら、navigationDestinationを使う場合はNavigationLinkが必須になりますが、NavigationLinkを使っていないパターンもあったのでよくわからなくなってしまいました。
ここは後々復習したいところですね。
Day 45 – Project 9, part 3
学習時間
15分
学んだこと
- ナビゲーションバーの見た目の変更方法
- ツールバーにおく項目の位置の調整方法
- ナビゲーションタイトルを編集可能にする方法
感想
Project 9の解説パートです。
今回は過去一内容が短かったので15分で完了してしまいました。
内容も特に難しいものではなかったのですんなり理解できました。
まとめ
100 Days of SwiftUIのDay 41〜Day 45が完了しました。
理解できないことも多くなってきましたが、頑張って継続しています。
特にSwiftUIで用意されているViewの使い分けと、Viewにつけるmodifierの位置が難しいと感じています。繰り返し使って覚えていくしかないと思いますので、今は理解できていなくても気にせず続けていこうと思います。
以上、白くまコージでした!