Jiwift

[iOS/Swift] MapKit 추가하기 본문

iOS Dev/iOS

[iOS/Swift] MapKit 추가하기

지위프트 2024. 4. 14. 17:24
반응형

 애플에서 제공해 주는 MapKit을 추가하는 방법을 기록. 

 

 위와 같이 애플 지도를 화면에 띄우는 것이 목적입니다. 단순하게 보여주기 위한 것은 매우 간단하기 때문에 쉽게 따라 하실 수 있습니다.

 

import MapKit

 맵을 사용하기 위해서는 MapKit을 import해야합니다. 원하는 위치에 추가해 주세요.

 

let mapView = MKMapView()

 MKMapView를 선언합니다. 변수는 간단하게 맵뷰로 하겠습니다.

 

self.view.addSubview(self.mapView)

 이제 선언된 맵뷰를 원하는 View에 추가를 해주세요. 저는 최상위 View에 추가를 했습니다.

// Auto Layout 제약 설정
self.mapView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
    self.mapView.topAnchor.constraint(equalTo: view.topAnchor),
    self.mapView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
    self.mapView.trailingAnchor.constraint(equalTo: view.trailingAnchor),
    self.mapView.bottomAnchor.constraint(equalTo: view.bottomAnchor)
])



// SnapKit 제약 설정
self.mapView.snp.makeConstraints {
    $0.top.leading.trailing.bottom.equalToSuperview()
}

 맵뷰를 원하는 View에 추가하고 레이아웃을 설정합니다. 위 코드에서 AutoLayout과 SnapKit 중에서 원하는 방식으로 설정하면 되실 것 같습니다.

 

 이렇게 추가하고 앱을 실행하면 따로 설정 없이 코드만으로 맵이 나오는 것을 확인하실 수 있습니다.

 

 

 

전체 코드

import UIKit
import MapKit

class MapKitViewController: UIViewController {

    let mapView = MKMapView()
    
    override func viewDidLoad() {
        super.viewDidLoad()

        self.view.addSubview(self.mapView)
        
        // Auto Layout 제약 설정
        self.mapView.translatesAutoresizingMaskIntoConstraints = false
        NSLayoutConstraint.activate([
            self.mapView.topAnchor.constraint(equalTo: view.topAnchor),
            self.mapView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
            self.mapView.trailingAnchor.constraint(equalTo: view.trailingAnchor),
            self.mapView.bottomAnchor.constraint(equalTo: view.bottomAnchor)
        ])
    }
}
반응형