GMSMapView 클래스 참조


개요

iOS용 Google 지도 SDK의 기본 클래스이며 지도와 관련된 모든 메서드의 진입점입니다.

지도는 편의 생성자 [GMSMapView mapWithFrame:camera:]를 통해 인스턴스화해야 합니다. 기본 [[GMSMapView alloc] initWithFrame:] 메서드를 사용하여 만들 수도 있습니다 (카메라가 기본 위치로 설정됨).

GMSMapView는 모든 UIKit 객체와 마찬가지로 기본 스레드에서만 읽고 수정할 수 있습니다. 다른 스레드에서 이러한 메서드를 호출하면 예외 또는 정의되지 않은 동작이 발생합니다.

공개 멤버 함수

(인스턴스 유형)- initWithFrame:camera:
 프레임과 카메라 타겟을 사용하여 지도뷰를 빌드하고 반환합니다.
(인스턴스 유형)- initWithFrame:mapID:camera:
 프레임, 지도 ID, 카메라 타겟을 사용하여 지도뷰를 빌드하고 반환합니다.
(무효)- startRendering
 이 지도에 렌더기의 전원을 켜도록 지시합니다.
(무효)- stopRendering
 이 지도에 렌더기의 전원을 끄라고 지시합니다.
(무효)- 삭제
 마커, 다중선, 지면 오버레이를 비롯하여 지도에 추가된 모든 마크업을 삭제합니다.
(무효)- setMinZoom:maxZoom:
 minZoommaxZoom를 설정합니다.
(null을 허용하는 GMSCameraPosition *)- cameraForBounds:insets:
 paddingbounds를 표시하는 GMSCameraPosition을 빌드합니다.
(무효)- moveCamera:
 update에 따라 카메라를 변경합니다.
(부울)- areEqualForRenderingPosition:position:
 주어진 카메라 위치로 인해 내부적으로 사용되는 정밀도와 변환의 수준을 고려하여 카메라가 사실상 동일하게 렌더링되는지 확인합니다.
(무효)- animateToCameraPosition:
 이 지도의 카메라를 cameraPosition로 애니메이션합니다.
(무효)- animateToLocation:
 animateToCameraPosition:에 해당하지만 카메라의 위치만 변경합니다 (예: 현재 위치에서 location로 변경).
(무효)- animateToZoom:
 animateToCameraPosition:이지만 카메라의 확대/축소 수준만 변경합니다.
(무효)- animateToBearing:
 animateToCameraPosition:로 설정하되 카메라의 방위만 변경합니다 (도).
(무효)- animateToViewingAngle:
 animateToCameraPosition::을 지원하지만 카메라의 시야각 (단위: 도)만 변경합니다.
(무효)- animateWithCameraUpdate:
 cameraUpdate를 현재 카메라에 적용한 다음 animateToCameraPosition:에 따라 결과를 사용합니다.

정적 공개 구성원 함수

(인스턴스 유형)+ mapWithFrame:camera:
 프레임과 카메라 타겟으로 지도뷰를 빌드하고 반환합니다.
(인스턴스 유형)+ mapWithFrame:mapID:camera:
 프레임, 지도 ID, 카메라 타겟을 사용하여 지도뷰를 만들고 반환하는 편의 초기화 프로그램이 있습니다.

속성

IBOutlet ID< GMSMapViewDelegate >대리인
 GMSMapView 위임을 설정합니다.
GMSCameraPosition*카메라
 지도의 방향이 정의되는 카메라를 제어합니다.
GMS프로젝션*projection
 화면 좌표와 위도/경도 좌표 간 변환에 사용할 수 있는 GMSProjection 객체를 반환합니다.
부울myLocationEnabled
 내 위치 점 및 정확도 원의 사용 여부를 제어합니다.
CLLocation * 내 위치
 '내 위치'를 사용 설정하면 사용자 위치 점을 그리는 위치가 표시됩니다.
GMS 마커선택한 마커
 선택된 마커
부울trafficEnabled
 지도에서 교통정보를 그릴 수 있는지 여부를 제어합니다(사용 가능한 경우).
GMSMapViewType지도 유형
 표시되어야 하는 지도 타일의 유형을 제어합니다.
GMSMapStyle *지도 스타일
 지도의 스타일을 제어합니다.
부동 소수점 수minZoom
 최소 확대/축소 (카메라를 가장 멀리 축소할 수 있음)
부동 소수점 수maxZoom
 최대 확대/축소 (카메라가 지구에 가장 가까울 수 있음)
부울buildingsEnabled
 설정하면 가능한 경우 3D 빌딩이 표시됩니다.
부울indoorEnabled
 가능한 경우 실내 지도 표시 여부를 설정합니다.
GMSIndoorDisplay실내 디스플레이
 실내 데이터 표시의 여러 측면을 관찰하거나 제어할 수 있게 해주는 GMSIndoorDisplay 인스턴스를 가져옵니다.
GMSUISettings설정
 지도의 사용자 인터페이스 설정을 제어하는 GMSUISettings 객체를 가져옵니다.
UIEdgeInsets패딩
 뷰의 '표시' 영역을 제어합니다.
GMSMapViewPaddingAdjustmentBehaviorpaddingAdjustmentBehavior
 안전 영역 인셋을 패딩 값에 추가하는 방법을 제어합니다.
부울접근성 요소 숨김
 기본값은 YES입니다.
GMSMapLayer레이어
 레이어에 사용되는 맞춤 CALayer 유형의 접근자입니다.
GMSFrameRate기본 프레임 속도
 렌더링 프레임 속도를 제어합니다.
GMSCoordinateBoundscameraTargetBounds
 nil이 아니면 동작으로 인해 지정된 범위를 벗어나지 않도록 카메라 타겟을 제한합니다.

참고로, 이러한 함수는 멤버 함수가 아닙니다.

NSString *constkGMS접근성Compass
 나침반 버튼의 접근성 식별자입니다.
NSString *constkGMS접근성 MyLocation
 '내 위치' 버튼의 접근성 식별자입니다.

구성원 함수 문서

+ (instancetype) mapWithFrame: (CGRect) 프레임
카메라: (GMSCameraPosition *) 카메라

프레임과 카메라 타겟으로 지도뷰를 빌드하고 반환합니다.

+ (instancetype) mapWithFrame: (CGRect) 프레임
지도 ID: (GMSMapID*) 지도 ID
카메라: (GMSCameraPosition *) 카메라

프레임, 지도 ID, 카메라 타겟을 사용하여 지도뷰를 만들고 반환하는 편의 초기화 프로그램이 있습니다.

- (instancetype) initWithFrame: (CGRect) 프레임
카메라: (GMSCameraPosition *) 카메라

프레임과 카메라 타겟을 사용하여 지도뷰를 빌드하고 반환합니다.

- (instancetype) initWithFrame: (CGRect) 프레임
지도 ID: (GMSMapID*) 지도 ID
카메라: (GMSCameraPosition *) 카메라

프레임, 지도 ID, 카메라 타겟을 사용하여 지도뷰를 빌드하고 반환합니다.

- (void) startRendering

이 지도에 렌더기의 전원을 켜도록 지시합니다.

이는 선택사항이며 멱등적입니다.

참고:
지원이 중단되었습니다. 이 방법은 더 이상 사용되지 않으며 향후 버전에서 삭제될 예정입니다.
- (void) stopRendering

이 지도에 렌더기의 전원을 끄라고 지시합니다.

이는 선택사항이며 멱등적입니다.

참고:
지원이 중단되었습니다. 이 방법은 더 이상 사용되지 않으며 향후 버전에서 삭제될 예정입니다.
- (void) 삭제

마커, 다중선, 지면 오버레이를 비롯하여 지도에 추가된 모든 마크업을 삭제합니다.

이렇게 해도 표시된 위치 점이 지워지거나 현재 mapType이 재설정되지 않습니다.

- (void) setMinZoom: (부동 소수점 수) minZoom
maxZoom: (부동 소수점 수) maxZoom

minZoommaxZoom를 설정합니다.

이 메서드는 최솟값이 최댓값보다 작거나 같을 것으로 예상하며, 그렇지 않으면 이름이 NSRangeException인 예외가 발생합니다.

- (null을 허용하는 GMSCameraPosition *) cameraForBounds: (GMSCoordinateBounds *) 경계
인셋: (UIEdgeInsets) 인셋

paddingbounds를 표시하는 GMSCameraPosition을 빌드합니다.

카메라의 방위와 기울기가 0이 됩니다 (즉, 북쪽을 향하고 지구를 똑바로 바라봄). 여기에는 이 GMSMapView의 프레임과 패딩이 고려됩니다.

경계가 유효하지 않으면 이 메서드는 nil 카메라를 반환합니다.

- (void) moveCamera: (GMSCameraUpdate *) 업데이트

update에 따라 카메라를 변경합니다.

카메라가 즉시 변경됩니다 (애니메이션 없음).

- (BOOL) areEqualForRenderingPosition: (GMSCameraPosition *) position
게재순위: (GMSCameraPosition *) otherPosition

주어진 카메라 위치로 인해 내부적으로 사용되는 정밀도와 변환의 수준을 고려하여 카메라가 사실상 동일하게 렌더링되는지 확인합니다.

- (void) animateToCameraPosition: (GMSCameraPosition *) 카메라 위치

이 지도의 카메라를 cameraPosition로 애니메이션합니다.

- (void) animateToLocation: (CLLocationCoordinate2D) 위치

animateToCameraPosition:이지만 카메라의 위치만 변경합니다 (예: 현재 위치에서 location로 변경).

- (void) animateToZoom: (부동 소수점 수) 확대/축소

animateToCameraPosition:이지만 카메라의 확대/축소 수준만 변경합니다.

이 값은 [kGMSMinZoomLevel, kGMSMaxZoomLevel]로 고정됩니다.

- (void) animateToBearing: (CLLocationDirection) bearing

animateToCameraPosition:로 설정하되 카메라의 방위만 변경합니다 (도).

0은 진북을 나타냅니다.

- (void) animateToViewingAngle: (이중) viewingAngle

animateToCameraPosition::을 지원하지만 카메라의 시야각 (단위: 도)만 변경합니다.

이 값은 지구에 대한 상대적 근접성에 따라 최소 0 (즉, 똑바로 아래를 향함)으로 수평으로 30도에서 45도 사이로 고정됩니다.

- (void) animateWithCameraUpdate: (GMSCameraUpdate *) 카메라 업데이트

cameraUpdate를 현재 카메라에 적용한 다음 animateToCameraPosition:에 따라 결과를 사용합니다.


- (NSString* const) kGMSAccessibilityCompass [related]

나침반 버튼의 접근성 식별자입니다.

- (NSString* const) kGMSAccessibilityMyLocation [related]

'내 위치' 버튼의 접근성 식별자입니다.


속성 문서

- (IBOutlet id<GMSMapViewDelegate>) 위임 [read, write, assign]

GMSMapView 위임을 설정합니다.

- (GMSCameraPosition*) 카메라 [read, write, copy]

지도의 방향이 정의되는 카메라를 제어합니다.

이 속성의 수정은 즉시 이루어집니다.

- (GMSProjection*) 프로젝션 [read, assign]

화면 좌표와 위도/경도 좌표 간 변환에 사용할 수 있는 GMSProjection 객체를 반환합니다.

현재 프로젝션의 스냅샷이며 카메라가 이동해도 자동으로 업데이트되지 않습니다. 마지막으로 그려진 GMSMapView 프레임의 프로젝션 또는 카메라가 명시적으로 설정되어 있거나 방금 만든 지도, 예정된 프레임을 나타냅니다. null이 되지 않습니다.

- (BOOL) myLocationEnabled [read, write, assign]

내 위치 점 및 정확도 원의 사용 여부를 제어합니다.

기본값은 NO입니다.

- (CLLocation*) myLocation [read, assign]

'내 위치'를 사용 설정하면 사용자 위치 점을 그리는 위치가 표시됩니다.

위치 서비스가 사용 중지되어 있거나 사용 설정되어 있지만 위치 데이터를 사용할 수 없는 경우 null이 됩니다. 이 속성은 KVO를 사용하여 관찰할 수 있습니다.

- (GMSMarker*) SelectedMarker [read, write, assign]

선택된 마커

이 속성을 설정하면 특정 마커를 선택하여 정보 창을 표시할 수 있습니다. 이 속성이 nil이 아닌 경우 nil로 설정하면 마커가 선택 해제되고 정보 창이 숨겨집니다. 이 속성은 KVO를 사용하여 관찰할 수 있습니다.

- (BOOL) trafficEnabled [read, write, assign]

지도에서 교통정보를 그릴 수 있는지 여부를 제어합니다(사용 가능한 경우).

이는 트래픽 데이터의 가용성에 따라 달라집니다. 기본값은 NO입니다.

- (GMSMapViewType) mapType [read, write, assign]

표시되어야 하는 지도 타일의 유형을 제어합니다.

기본값은 kGMSTypeNormal입니다.

- (GMSMapStyle*) mapStyle [read, write, assign]

지도의 스타일을 제어합니다.

nil이 아닌 mapStyle은 mapType이 Normal인 경우에만 적용됩니다.

- (부동 소수점 수) minZoom [read, assign]

최소 확대/축소 (카메라를 가장 멀리 축소할 수 있음)

기본값은 kGMSMinZoomLevel입니다. -setMinZoom:maxZoom:으로 수정되었습니다.

- (부동 소수점 수) maxZoom [read, assign]

최대 확대/축소 (카메라가 지구에 가장 가까울 수 있음)

기본값은 kGMSMaxZoomLevel입니다. -setMinZoom:maxZoom:으로 수정되었습니다.

- (BOOL) buildingsEnabled [read, write, assign]

설정하면 가능한 경우 3D 빌딩이 표시됩니다.

기본값은 YES입니다.

이 기능은 지도에 맞춤 타일 레이어를 추가하여 높은 확대/축소 수준에서 더 선명하게 만들 수 있습니다. 이 값을 변경하면 모든 타일이 잠시 무효화됩니다.

- (BOOL) indoorEnabled [read, write, assign]

가능한 경우 실내 지도 표시 여부를 설정합니다.

기본값은 YES입니다.

NO로 설정하면 실내 데이터의 캐시가 삭제되고 최종 사용자가 현재 선택한 최솟값이 재설정될 수 있습니다.

- (GMSIndoorDisplay*) indoorDisplay [read, assign]

실내 데이터 표시의 여러 측면을 관찰하거나 제어할 수 있게 해주는 GMSIndoorDisplay 인스턴스를 가져옵니다.

- (GMSUISettings*) 설정 [read, assign]

지도의 사용자 인터페이스 설정을 제어하는 GMSUISettings 객체를 가져옵니다.

- (UIEdgeInsets) 패딩 [read, write, assign]

뷰의 '표시' 영역을 제어합니다.

패딩을 적용하면 뷰 가장자리 주위의 영역을 만들 수 있습니다. 이 영역에는 지도 데이터는 포함되지만 UI 컨트롤은 포함되지 않습니다.

패딩이 균형을 이루지 못하는 경우 뷰의 시각적 중심이 적절하게 이동합니다. 패딩은 projection 속성에도 영향을 주기 때문에 표시된 영역에 패딩 영역이 포함되지 않습니다. GMSCameraUpdate fitToBounds를 사용하면 이 패딩과 요청된 패딩을 모두 고려합니다.

이 속성은 UIView 기반 애니메이션 블록 내에서 애니메이션될 수 있습니다.

안전 영역 인셋을 패딩 값에 추가하는 방법을 제어합니다.

패딩과 마찬가지로 안전 영역 인셋은 기기의 안전 영역 내에 있는 나침반, 내 위치 버튼 및 층 선택 도구와 같은 위치 지도 컨트롤을 삽입합니다.

기본값은 kGMSMapViewPaddingAdjustmentBehaviorAlways

- (BOOL) accessibilityElementsHidden [read, write, assign]

기본값은 YES입니다.

NO로 설정하면 GMSMapViewGMSMarkerGMS다중선과 같은 오버레이 객체의 접근성 요소를 생성합니다.

이 속성은 비표준 UIAccessibility 프로토콜을 따릅니다. 단, YES 값이 기본값입니다.

- (GMSMapLayer*) 레이어 [read, retain]

레이어에 사용되는 맞춤 CALayer 유형의 접근자입니다.

- (GMSFrameRate)preferredFrameRate [read, write, assign]

렌더링 프레임 속도를 제어합니다.

기본값은 kGMSFrameRateMax입니다.

- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign]

nil이 아니면 동작으로 인해 지정된 범위를 벗어나지 않도록 카메라 타겟을 제한합니다.