[REFACTOR] ナビゲーション問題解決 #10
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🌁 背景
本プロジェクトはiOS 15をサポートしているため、SwiftUIおよびTCAが提供する最新のナビゲーション関連の機能を十分に活用できませんでした。
iOS 15に対応させる実装を試みましたが、想定外のエラーが発生したため、それを解消する必要がありました。
👩💻 内容
UINavigationControllerを利用し、AppCoordinatorを再構築しました。AppDelegateとSceneDelegateを導入し、アプリのエントリーポイントに@UIApplicationDelegateAdaptor private var appDelegate: AppDelegateを追加して遷移できるようにしました。📝 レビューメモ
画面間の依存を減らすために、Coordinatorパターンを採用しました。
SwiftUIベースのプロジェクトではありますが、iOS 15対応のためにはSwiftUIのみでは制約が多く、UIKitを併用する判断をしました。
SwiftUIのみで構成する場合、最低でもiOS 16以上が前提となることを改めて実感しました。
📣 関連イシュー