InaviMapView
Objective-C
@interface InaviMapView : UIView
Swift
class InaviMapView : UIView
아이나비 지도를 정의하는 뷰 클래스.
해당 클래스를 서브 뷰로 추가하여 지도를 표출할 수 있습니다.
-
지정된 프레임 크기로 지도 뷰의 인스턴스를 생성합니다.
Declaration
Objective-C
- (nonnull instancetype)initWithFrame:(CGRect)frame;
Swift
init(frame: CGRect)
Parameters
frame
사용자 지정 프레임 크기.
Return Value
InaviMapView
인스턴스. -
지정된 프레임 크기와 지도의 기본 옵션을 지정하여 지도 뷰의 인스턴스를 생성합니다.
Declaration
Objective-C
- (nonnull instancetype)initWithFrame:(CGRect)frame options:(nonnull INVMapOptions *)options;
Swift
init(frame: CGRect, options: INVMapOptions)
Parameters
frame
사용자 지정 프레임 크기.
options
지도의 기본 옵션.
Return Value
InaviMapView
인스턴스. -
지정된 프레임 크기, 기본 옵션과 Delegate를 지정하여 지도 뷰의 인스턴스를 생성합니다.
Declaration
Objective-C
- (nonnull instancetype)initWithFrame:(CGRect)frame options:(nullable INVMapOptions *)options delegate:(nonnull id<INVMapViewDelegate>)delegate;
Swift
init(frame: CGRect, options: INVMapOptions?, delegate: any INVMapViewDelegate)
Parameters
frame
사용자 지정 프레임 크기.
options
지도의 기본 옵션.
delegate
InaviMapView
의 Delegate.Return Value
InaviMapView
인스턴스.
-
InaviMapView
의 Delegate.지도 뷰의 Delegate를 이용해 지도의 표출이나, 화면 갱신 여부 등의 메시지를 전달합니다.
Declaration
Objective-C
@property (nonatomic, weak, nullable) id<INVMapViewDelegate> delegate;
Swift
@IBOutlet weak var delegate: (any INVMapViewDelegate)? { get set }
-
지도의 최소 줌 레벨.
기본값은
1
입니다.Declaration
Objective-C
@property (nonatomic) double minimumZoomLevel;
Swift
var minimumZoomLevel: Double { get set }
-
지도의 최대 줌 레벨.
기본값은
20
입니다.Declaration
Objective-C
@property (nonatomic) double maximumZoomLevel;
Swift
var maximumZoomLevel: Double { get set }
-
지도의 최소 기울기 각도. (도 단위)
기본값은
0
입니다.Declaration
Objective-C
@property (nonatomic) double minimumTilt;
Swift
var minimumTilt: Double { get set }
-
지도의 최대 기울기 각도. (도 단위)
기본값은
60
입니다.Declaration
Objective-C
@property (nonatomic) double maximumTilt;
Swift
var maximumTilt: Double { get set }
-
지도 심벌의 크기. (배율 단위)
0.0
~2.0
값을 지원하며1.5
으로 설정하면 지도 심벌이1.5
배의 크기로 표출됩니다.기본값은
1.0
입니다.Declaration
Objective-C
@property (nonatomic) double symbolScale;
Swift
var symbolScale: Double { get set }
-
지도 이동을 제한하는
INVLatLngBounds
영역.nil
로 설정할 경우 제한이 해제됩니다.Declaration
Objective-C
@property (nonatomic, nullable) INVLatLngBounds *constraintBounds;
Swift
var constraintBounds: INVLatLngBounds? { get set }
-
지도 영역 중심에 대한 카메라 위치.
Declaration
Objective-C
@property (nonatomic) INVCameraPosition *_Nonnull cameraPosition;
Swift
var cameraPosition: INVCameraPosition { get set }
-
이 지도에 대한
INVProjection
객체.Declaration
Objective-C
@property (nonatomic, readonly) INVProjection *_Nonnull projection;
Swift
var projection: INVProjection { get }
-
지도의 패딩. 패딩에 해당하는 부분은 지도의 콘텐츠 영역에서 제외됩니다.
Declaration
Objective-C
@property (nonatomic) UIEdgeInsets contentInset;
Swift
var contentInset: UIEdgeInsets { get set }
-
지도 영역에 대한
INVLatLngBounds
.Declaration
Objective-C
@property (nonatomic, copy, readonly) INVLatLngBounds *_Nonnull contentBounds;
Swift
@NSCopying var contentBounds: INVLatLngBounds { get }
-
축척 바 표출 여부.
기본값은
YES
입니다.Declaration
Objective-C
@property (nonatomic) BOOL showScaleBar;
Swift
var showScaleBar: Bool { get set }
-
나침반 표출 여부.
기본값은
YES
입니다.Declaration
Objective-C
@property (nonatomic) BOOL showCompass;
Swift
var showCompass: Bool { get set }
-
줌 컨트롤 표출 여부.
기본값은
NO
입니다.Declaration
Objective-C
@property (nonatomic) BOOL showZoomControl;
Swift
var showZoomControl: Bool { get set }
-
현위치 버튼 표출 여부.
기본값은
NO
입니다.Declaration
Objective-C
@property (nonatomic) BOOL showLocationButton;
Swift
var showLocationButton: Bool { get set }
-
로고의 위치.
기본값은
INVPositionBottomLeft
입니다.Declaration
Objective-C
@property (nonatomic) INVPosition logoViewPosition;
Swift
var logoViewPosition: INVPosition { get set }
-
로고의 마진 (pt 단위).
기본값은
(8, 8)
입니다.Declaration
Objective-C
@property (nonatomic) CGPoint logoViewMargins;
Swift
var logoViewMargins: CGPoint { get set }
-
지도에 적용할 커스텀 지도 스타일.
적용하려는 지도 스타일이
INVMapSdk.savedCustomMapStyles
에 존재하지 않거나nil
로 설정할 경우 기본 지도 스타일이 적용됩니다.커스텀 스타일 적용 시 건물 3D 효과, 셰이프 전역 Z 인덱스, 지도 심볼 Scale 기능은 제한적으로 지원되거나 지원되지 않습니다. 추후 업데이트를 통해 지원될 예정입니다.
기본값은
nil
입니다.Declaration
Objective-C
@property (nonatomic, strong, nullable) INVMapStyle *customMapStyle;
Swift
var customMapStyle: INVMapStyle? { get set }
-
지도의 유형.
기본값은
INVMapTypeNormal
입니다.Declaration
Objective-C
@property (nonatomic) INVMapType mapType;
Swift
var mapType: INVMapType { get set }
-
위치 추적 모드.
Declaration
Objective-C
@property (nonatomic) INVUserTrackingMode userTrackingMode;
Swift
var userTrackingMode: INVUserTrackingMode { get set }
-
현위치 아이콘.
Declaration
Objective-C
@property (nonatomic, strong, readonly) INVLocationIcon *_Nonnull locationIcon;
Swift
var locationIcon: INVLocationIcon { get }
-
지도 줌 제스처 사용 여부를 나타내는 속성.
기본값은
YES
입니다.Declaration
Objective-C
@property (nonatomic, assign, unsafe_unretained, readwrite, getter=isZoomGesturesEnabled) BOOL zoomGesturesEnabled;
Swift
var isZoomGesturesEnabled: Bool { get set }
-
지도 스크롤 제스처 사용 여부를 나타내는 속성.
기본값은
YES
입니다.Declaration
Objective-C
@property (nonatomic, assign, unsafe_unretained, readwrite, getter=isScrollGesturesEnabled) BOOL scrollGesturesEnabled;
Swift
var isScrollGesturesEnabled: Bool { get set }
-
지도 회전 제스처 사용 여부를 나타내는 속성.
기본값은
YES
입니다.Declaration
Objective-C
@property (nonatomic, assign, unsafe_unretained, readwrite, getter=isRotateGesturesEnabled) BOOL rotateGesturesEnabled;
Swift
var isRotateGesturesEnabled: Bool { get set }
-
지도 기울기 제스처 사용 여부를 나타내는 속성.
기본값은
YES
입니다.Declaration
Objective-C
@property (nonatomic, assign, unsafe_unretained, readwrite, getter=isTiltGesturesEnabled) BOOL tiltGesturesEnabled;
Swift
var isTiltGesturesEnabled: Bool { get set }
-
줌 또는 회전 제스처 시 기준점을 지도 중심으로 할지 여부를 나타내는 속성.
값이
YES
이면 지도 중심을 기준으로,NO
이면 제스처 하는 위치를 기준으로 줌 또는 회전이 됩니다.
기본값은NO
입니다.Declaration
Objective-C
@property (nonatomic, assign, unsafe_unretained, readwrite, getter=isFocalPointCenter) BOOL focalPointCenter;
Swift
var isFocalPointCenter: Bool { get set }
-
로고 클릭 시 SDK 정보 팝업 표출 여부를 나타내는 속성.
비활성화 시 별도의 페이지에 아이나비 지도 SDK의 오픈 소스 라이선스와 법적 고지를 제공해야 합니다.
기본값은YES
입니다.Declaration
Objective-C
@property (nonatomic, assign, unsafe_unretained, readwrite, getter=isLogoClickEnabled) BOOL logoClickEnabled;
Swift
var isLogoClickEnabled: Bool { get set }
-
지도 애니메이션 마찰 계수 입니다. 값의 범위는
0~1
이며, 계수가 클수록 마찰이 강해집니다.기본값은
UIScrollViewDecelerationRateNormal
입니다.Declaration
Objective-C
@property (nonatomic) CGFloat decelerationRate;
Swift
var decelerationRate: CGFloat { get set }
-
카메라를 이동합니다.
Declaration
Objective-C
- (void)moveCamera:(nonnull INVCameraUpdate *)cameraUpdate;
Swift
func moveCamera(_ cameraUpdate: INVCameraUpdate)
Parameters
cameraUpdate
INVCameraUpdate
객체. -
카메라를 이동합니다. 카메라 이동이 완료되거나 취소되었을 경우
completion
블록이 호출됩니다.Declaration
Objective-C
- (void)moveCamera:(nonnull INVCameraUpdate *)cameraUpdate completion:(nullable void (^)(BOOL))completion;
Swift
func moveCamera(_ cameraUpdate: INVCameraUpdate) async -> Bool
Parameters
cameraUpdate
INVCameraUpdate
객체.completion
카메라 이동이 완료되었을 때 호출되는 콜백 블록. (완료 전에 다른 지도 조작으로 취소 여부를 isCancelled로 전달합니다.)
-
현재 진행 중인 지도 이동 애니메이션을 취소합니다.
Declaration
Objective-C
- (void)cancelTransitions;
Swift
func cancelTransitions()
-
특정
INVLatLngBounds
전체 영역이 보이는 중심 좌표와 줌 레벨을 포함하는INVCameraPosition
객체를 반환합니다.Declaration
Objective-C
- (nonnull INVCameraPosition *)cameraFitBounds: (nonnull INVLatLngBounds *)bounds;
Swift
func cameraFitBounds(_ bounds: INVLatLngBounds) -> INVCameraPosition
Parameters
bounds
INVLatLngBounds
객체.Return Value
-
특정
INVLatLngBounds
전체 영역이 보이는 중심 좌표와 줌 레벨을 포함하는INVCameraPosition
객체를 반환합니다.Declaration
Objective-C
- (nonnull INVCameraPosition *)cameraFitBounds:(nonnull INVLatLngBounds *)bounds insets:(UIEdgeInsets)insets;
Swift
func cameraFitBounds(_ bounds: INVLatLngBounds, insets: UIEdgeInsets) -> INVCameraPosition
Parameters
bounds
INVLatLngBounds
객체.insets
패딩 값. (pt 단위)
Return Value
-
지도에 등록된 모든 셰이프를 지도에서 제거합니다.
See
INVShape.mapView
Declaration
Objective-C
- (void)clearShapes;
Swift
func clearShapes()