지도는 API에서 GMSMapView
클래스, 즉
UIView
의 서브클래스. 지도는 세계에서 가장 중요한 객체입니다.
iOS용 Maps SDK를 제공하며, 추가, 삭제에 필요한 메서드를 제공합니다.
마커 및 다중선과 같은 기타 객체를 관리할 수 있습니다.
소개
iOS용 Maps SDK를 사용하면 있습니다. 이 지도는 Google 지도 SDK의 여러 동일한 기능을 노출합니다.
또한 API는 매핑 기능 외에도 다음과 같은 다양한 상호작용을 지원해야 합니다. 예를 들어 사용자와의 동작에 반응하는 응답자를 정의하여 지도와의 상호작용을 개선할 수 있습니다. 탭이나 두 번 탭 등의 기능을 사용할 수 있습니다
지도 객체 사용 시의 주요 클래스는 GMSMapView
클래스입니다.
GMSMapView
는 다음 작업을 자동으로 처리합니다.
- Google 지도 서비스에 연결
- 지도 타일 다운로드
- 기기 화면에 타일 표시
- 화면 이동 및 확대/축소와 같은 다양한 컨트롤 표시
- 화면 이동 및 확대/축소 동작 시 지도를 이동하거나 확대/축소하여 응답
- 화면의 시야각을 기울여 두 손가락 제스처에 반응 있습니다.
이러한 자동 작업 외에도
에 의해 노출되는 속성 및 메서드를 통해 지도의 모양을
GMSMapView
클래스. GMSMapView
에서는 마커, 지면을 추가하고 제거할 수 있습니다.
표시되는 지도 유형을 변경하고
GMSCameraPosition
를 통해 지도에 표시되는 내용
클래스에 대해 자세히 알아보세요.
SwiftUI로 지도 빌드
SwiftUI는 선언적 접근 방식을 사용하여 UI를 만드는 추가적인 방법을 제공합니다. 나 다양한 상태와 함께 뷰를 원하는 방식을 SwiftUI에 알림 나머지는 시스템에서 알아서 처리합니다. SwiftUI는 언제든지 뷰 업데이트를 처리합니다. 이벤트 또는 사용자 작업으로 인해 기본 상태가 변경되는 경우.
iOS용 Maps SDK는 UIKit
를 기반으로 빌드되었으며
SwiftUI 호환 뷰. SwiftUI에 지도를 추가하려면 다음 중 하나를 준수해야 합니다.
UIViewRepresentable
또는 UIViewControllerRepresentable
자세한 내용은
Codelab 다음을 사용하여 iOS 앱에 지도 추가
SwiftUI를 사용하는 것입니다.
지도 추가하기
지도를 추가하는 기본 단계는 다음과 같습니다.
SDK와 API 키를 가져온 후 필수 프레임워크를 추가하려면 다음 단계를 따르세요.
AppDelegate
에서provideAPIKey:
에 API 키를 제공합니다.GMSServices
에 대해 자세히 알아보세요.ViewController
를 만들거나 업데이트합니다. 이 뷰 컨트롤러가 표시될 때 지도가 표시되는 경우viewDidLoad
메서드 내에서 지도를 만들어야 합니다.지도뷰를 초기화할 때 다음을 사용하여 구성 옵션을 설정합니다.
GMSMapViewOptions
속성에는frame
,camera
,mapID
,backgroundColor
또는screen
입니다.지도 옵션
camera
속성을GMSCameraPosition
객체. 이것은 이미지의 중심과 확대/축소 수준을 있습니다.GMSMapView
를 사용하여GMSMapView
클래스를 만들고 인스턴스화합니다.options:
메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 이 지도를 뷰 컨트롤러의 보기 전용입니다.CGRectZero
의 지도 옵션frame
기본값은frame
뷰로 사용됩니다. 지도의 크기가 자동으로 조정됩니다.GMSMapView
객체를 뷰 컨트롤러의 뷰로 설정합니다. 예를 들면self.view = mapView;
입니다.
아래 예시는 싱가포르 도심을 중심으로 하는 지도를 앱에 추가합니다.
Swift
import GoogleMaps class MapObjects : UIViewController { override func viewDidLoad() { super.viewDidLoad() let options = GMSMapViewOptions() options.camera = GMSCameraPosition(latitude: 1.285, longitude: 103.848, zoom: 12) options.frame = self.view.bounds; let mapView = GMSMapView(options:options) self.view = mapView } }
Objective-C
- (void)viewDidLoad { [super viewDidLoad]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:1.285 longitude:103.848 zoom:12]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; self.view = mapView; }
이 단계를 따른 후에는 GMSMapView
를 추가로 구성할 수 있습니다.
객체를 지정합니다.
다음 단계
이 단계를 완료하면 지도를 구성할 수 있습니다. 설정을 참조하세요.