MapKitとは
2020/8/20に更新
【環境】
swift 5.1 Xcode11.6 |
MapKitとは
地図を表示するときに利用します。フレームワークです。
橋渡しのコードが必要。
・地図を表示できる ・ピンを立てる事ができる ・初期に表示する位置が決められる ・現在位置のトラッキングを開始・終了できる ・地図のスケールを自動的に調節できる |
地図を表示するには?
地図を表示させるには、MapKitのフレームワークをインポートする必要があります。
import SwiftUI
struct MapView: UIViewRepresentable {
// 親のビューからlatitudeDelta,longitudeDelta用の値と変化を受け取る
//空のswiftUI用のViewを作る、MKMapViewから継承する func makeUIView(context: Context) -> MKMapView {
// マップ更新時の動作、
let ido = 37.335020000//こうやって書いた方が楽なので
//緯度・経度を設定するメソッド
// zoomValueの値が変わるとここも更新される
//MKCoordinateSpanで縮尺を決めます
//中心と表示範囲の大きさ(span)を決める let region = MKCoordinateRegion(center: center, span: span)
//regionで規定された領域をビューに表示する」という命令 struct MapView_Previews: PreviewProvider { |
UIViewRepresentable
struct MapView: UIViewRepresentable { |
UIViewRepresentable でMapVIewに橋渡し、継承をします。
これで、SwiftUIにマップを表示できるようになります。
@Binding
@Binding var zoomValue: CLLocationDegrees |
@Binding はプロパティラッパーです。
@BindingをつけてやるとView間での双方向のデータ共有が可能になります。
class MKMapView : UIView |
MKCoordinateSpan
ソースコードを見ると、中心の座標を決めてくれ。と書いてあります。
では、見ていきましょう。
let region = MKCoordinateRegion(center: center, span: span) |
適当な名前の定数を作り、 MKCoordinateRegionを代入します。
MKCoordinateRegionをデベで見ると。
struct MKCoordinateRegion |
となっています。MKCoordinateRegionは構造体のようで初期値に
init(center: CLLocationCoordinate2D, span: MKCoordinateSpan) |
と書いてあります。
つまり、中心の座標を決めてくれ。というわけです。
この読み方ですが、ソースコードを写経⇒公式を参照 を繰り返していくと、なんとなく理解できます。
私も最初は、読み方が意味不明でした。100回位やっていると、だんだんわかってきます。
UIViewから継承しているので、UIKitが必要な事が分かります。
つまり、古いVIewを使う事になります。
参照サイト
【参照】
SwiftUIとUIKit混合環境で開発を行うときのヒント集
Swift 5.1 に導入される Opaque Result Type とは何か
SwiftUIとUIKit混合環境で開発を行うときのヒント集
システム開発いたします。ぜひご依頼くださいませ。
記事がお役に立ちましたら、ライン登録、メルマガ登録をよろしくお願いします。
※役立つ情報をお届けしていますので、ぜひメルマガ登録もぜひ、お願いします^^
この記事を読んだ人は、こんな記事も読んでいます
SEO対策の基本 外部要因とは?
SEO対策の基本的である、外部要因とは何か?
SEO対策をするなら絶対に知っておきたい、基本知識です。
売れるサイトを作るのに知って起きたい知識
サーチエンジンマーケティングという言葉をご存知でしょうか?
ホームページで商品やサービスを売る時に知っておきたいマーケティング
についてご紹介いたします。
SEO対策をする5つのメリットとは?
なぜ上位表示させることが大事なのか?なぜSEO対策をする必要があるのか
についてご紹介させていただきます。
SEO対策の内部要因とは?
上位表示させるためには、内部要因について知っておくことも大事です。
キーワードを上位表示させるために必要なのは、ソースコードを最適化することです
内部要因の対策について知りたい方はこちらへ
キーワード対策をする前に
そのキーワード対策。ちょっと待ってください。
そのまま対策をすると、必ずお金を損してしまいます。個人事業主や中小企業は
そんな大きなキーワードで対策をしてはいけません。
広告費用が高くなる本当の理由とは?
売れないサイトに集めていませんか?広告費用がかかるわりには
お問い合わせが少ない・・・と感じる方は多いはずです。
購入率の悪いサイトに集客をしている可能性があります。