content【SwiftUI】MapKitを導入して地図を表示するXcodeMapKitSwiftSwiftUIUIViewReprensetableこの投稿は何?SwiftUIフレークワークは宣言的にコードを記述することで、すばやくアプリケーションを開発できます。これまでのUIKitやAppKitで利用してきたUIコンポーネントのすべてがSwiftUIフレームワークに含まれてはいません。方法を例に、UIKitビューをSwiftUIで扱う手順を解説します。地図ビューを構築することもできます。ことをコンセプトとしています。地図を表示するだけのカスタムSwiftUIビューを作ってから、Content.swiftで利用することにします。SUMapView.swiftカスタムSwiftUIビューを記述するファイルです。MapViewをSwiftUIビューとして利用するので、SUMapViewという名前にしました。全体のソースコードプレビュープロバイダは一切、コードを編集していないのでプレビュー定義の部分は省略しています。上記コードのプレビューです。新しいファイルを作成します。File...」を選択する。Viewを選択して、Nextをクリックする。ファイル名をSUMapView.swiftをして、Createをクリックする。キーワードで、このファイルにMapKitを導入します。UIViewRepresentableプロトコルSUMapView構造体にUIRepresentableプロトコルを採用します。...}この時点で、UIViewRepresentableプロトコルに準拠するための要件を満たしていないので、エラーになります。SwiftUIビューとしてUIKit系のビューを描画するには、以下に挙げる2点のメソッドを実装する必要があります。構造体がどんなビューか?」を決定します。このメソッドが返すSelf.UIViewType型が、カスタムSwiftUIビューとして扱いたいUIKitビューの型になります。ここではMKMapView型のことです。makeUIView(context:)メソッドを記述しようとすると、Xcodeの補完機能が作動します。該当するメソッドを選択すると、以下のように記述が補完されます。型のビューを返すようにします。省略メソッドがUIViewTypeと一致する型を返していないので、下記のエラーが表示されます。UIViewTypeUIViewType型は未定義なので、任意の型として定義します。一致するようになったので、エラーが解消されます。タイプエイリアスを定義してから、makeUIView(context:)メソッドを実装すると以下のように補完されます。}返り値の型に注目してください。タイプエイリアスの宣言を探す必要がなく、ビューの型が理解できます。メソッドこのメソッドでは、「ビューが描画されるときの内容」を定義します。地図を表示することにします。実装すると、エラーがすべて解消されます。ContentView.swiftプロジェクトに最初から含まれる既定ファイルです。組み込むカタチにします。全体のソースコードプレビューの定義は省略しました。デフォルトのTextビューをSUMapViewに置き換えます。}}モディファイアも使えるので、、MapKitビューがSwiftUIビューっぽく利用できていることがわかります。進鎬@chino_tweet小学校で放課後プログラミング教室を実施しています。初学者のためのわかりやすい教材を目指しています。upLoginユーザーは見つかりませんでした。