今回の記事はSwift関連の記事で、MapKitで初期表示を緯度経度で指定する方法をご紹介する記事です。MapKitの使い方で困っている方にわかるように丁寧に記載していくので是非参考にしてみてください。
XcodeにMapKitを追加
cocoapodでライブラリのインストールなどは行う必要はありません。まずは、既存のフレームワーク「MapKit.Framework」をXcodeプロジェクトに追加します。(下記図参照)
「+ボタン」を押すとXcode内に元々入っているフレームワークの一覧が表示されます。ここでMapなどで検索すれば「MapKit.Framework」が出てきますのでaddを押します。
これでMapKitがXcodeプロジェクトに追加されましたのでstoryboardでMapKitを使用していきます。
Xcodeの右上の「+ボタン」を押してMapKitViewをstoryboardに追加します。画面いっぱいに広げてみましょう。
MapKitで地図を表示
MapKitに地図を表示させるだけの場合は、特にソースコードでの実装は不要です。
この地図上で何か操作を行う場合のみソースコードでの実装が必要です。
この状態でアプリをbuildすると下記のように地図を表示できます。
MapKitで初期表示を緯度経度で指定する方法
ネット上でたまにある、「MKCoordinateRegionMake」と「MKCoordinateSpanMake」が私のXcodeのバージョンでは使用できなくなっております。そのため「MKCoordinateRegion」と「MKCoordinateSpan」を使用する必要があります。
import UIKit
import MapKit
class MapViewController: UIViewController {
@IBOutlet weak var map: MKMapView!
override func viewDidLoad() {
super.viewDidLoad()
let center = CLLocationCoordinate2DMake(41.9027, 12.4963)
//表示範囲
let span = MKCoordinateSpan(latitudeDelta: 0.07, longitudeDelta: 0.07)
//中心座標と表示範囲をマップに登録する。
let region = MKCoordinateRegion(center: center, span: span)
map.setRegion(region, animated:true)
}
}
上記が実装です。解説していきます。
まずは、MKMapViewをIBOutletで紐付けます。
次に「CLLocationCoordinate2DMake」で緯度経度を設定、「MKCoordinateSpan」で指定範囲を設定します。
そして、「let region = MKCoordinateRegion(center: center, span: span)」の部分で表示領域をセットします。
最後に紐付けたMKMapViewにsetRegionで領域をセットします。
map.setRegion(region, animated:true)
これで、buildを行うと指定の緯度経度で地図を表示できるようになります。今回のサンプルアプリの緯度経度はローマを表しています。
では、今回の記事は以上です。他にも多数のSwift関連の記事を記載しているので、是非参考にしてみてください。
コメント