百度地图SDK for iOS v4.0.0 类参考
BMKMapView.h
1 /*
2  * BMKMapView.h
3  * BMapKit
4  *
5  * Copyright 2011 Baidu Inc. All rights reserved.
6  *
7  */
8 #import <BaiduMapAPI_Base/BMKBaseComponent.h>
9 #import "BMKAnnotation.h"
10 #import "BMKAnnotationView.h"
11 #import "BMKOverlayView.h"
12 #import "UIKit/UIKit.h"
13 #import "BMKMapStatus.h"
14 #import "BMKLocationViewDisplayParam.h"
15 #import "BMKHeatMap.h"
16 #import "BMKBaseIndoorMapInfo.h"
17 
18 @protocol BMKMapViewDelegate;
19 
21 @interface BMKMapPoi : NSObject
23 @property (nonatomic,strong) NSString* text;
25 @property (nonatomic,assign) CLLocationCoordinate2D pt;
27 @property (nonatomic,strong) NSString* uid;
28 @end
29 
30 typedef enum {
31  BMKUserTrackingModeNone = 0,
32  BMKUserTrackingModeHeading,
33  BMKUserTrackingModeFollow,
34  BMKUserTrackingModeFollowWithHeading,
35 } BMKUserTrackingMode;
36 
38 typedef enum {
39  BMKLogoPositionLeftBottom = 0,
40  BMKLogoPositionLeftTop,
41  BMKLogoPositionCenterBottom,
42  BMKLogoPositionCenterTop,
43  BMKLogoPositionRightBottom,
44  BMKLogoPositionRightTop,
45 } BMKLogoPosition;
46 
48 typedef enum {
49  BMKSwitchIndoorFloorSuccess = 0,
50  BMKSwitchIndoorFloorFailed,
51  BMKSwitchIndoorFloorNotFocused,
52  BMKSwitchIndoorFloorNotExist,
53 } BMKSwitchIndoorFloorError;
54 
56 @interface BMKMapView : UIView
57 
59 @property (nonatomic, weak) id<BMKMapViewDelegate> delegate;
60 
62 @property (nonatomic) BMKMapType mapType;
63 
65 @property (nonatomic) BMKCoordinateRegion region;
66 
68 @property (nonatomic) BMKCoordinateRegion limitMapRegion;
69 
71 @property (nonatomic) CGPoint compassPosition;
73 @property (nonatomic, readonly) CGSize compassSize;
74 
76 @property (nonatomic) CLLocationCoordinate2D centerCoordinate;
77 
79 @property (nonatomic) float zoomLevel;
81 @property (nonatomic) float minZoomLevel;
83 @property (nonatomic) float maxZoomLevel;
84 
86 @property (nonatomic) int rotation;
87 
89 @property (nonatomic) int overlooking;
91 @property(nonatomic, getter=isBuildingsEnabled) BOOL buildingsEnabled;
93 @property(nonatomic, assign) BOOL showMapPoi;
95 @property(nonatomic, getter=isTrafficEnabled) BOOL trafficEnabled;
97 @property(nonatomic, getter=isBaiduHeatMapEnabled) BOOL baiduHeatMapEnabled;
98 
100 @property(nonatomic) BOOL gesturesEnabled;
102 @property(nonatomic, getter=isZoomEnabled) BOOL zoomEnabled;
104 @property(nonatomic, getter=isZoomEnabledWithTap) BOOL zoomEnabledWithTap;
106 @property(nonatomic, getter=isScrollEnabled) BOOL scrollEnabled;
108 @property(nonatomic, getter=isOverlookEnabled) BOOL overlookEnabled;
110 @property(nonatomic, getter=isRotateEnabled) BOOL rotateEnabled;
111 
113 @property(nonatomic) BOOL forceTouchEnabled;
114 
116 @property (nonatomic) BOOL showMapScaleBar;
117 
119 @property (nonatomic) CGPoint mapScaleBarPosition;
120 
122 @property (nonatomic, readonly) CGSize mapScaleBarSize;
123 
125 @property (nonatomic) BMKLogoPosition logoPosition;
126 
128 @property (nonatomic) BMKMapRect visibleMapRect;
129 
135 @property (nonatomic) UIEdgeInsets mapPadding;
137 @property (nonatomic) BOOL updateTargetScreenPtWhenMapPaddingChanged;
138 
140 @property(nonatomic, getter=isChangeWithTouchPointCenterEnabled) BOOL ChangeWithTouchPointCenterEnabled;
141 
143 @property(nonatomic, getter=isChangeCenterWithDoubleTouchPointEnabled) BOOL ChangeCenterWithDoubleTouchPointEnabled;
144 
150 + (void)customMapStyle:(NSString*) customMapStyleJsonFilePath;
155 + (void)enableCustomMapStyle:(BOOL) enable;
156 
166 - (BOOL)setCustomTrafficColorForSmooth:(UIColor *)smooth slow:(UIColor *)slow congestion:(UIColor *)congestion severeCongestion:(UIColor *)severeCongestion;
167 
173 +(void)willBackGround __deprecated_msg("废弃方法(空实现),逻辑由地图SDK控制");
179 +(void)didForeGround __deprecated_msg("废弃方法(空实现),逻辑由地图SDK控制");
183 -(void)viewWillAppear;
184 
188 -(void)viewWillDisappear;
189 
193 - (void)mapForceRefresh;
194 
199 - (BOOL)zoomIn;
200 
205 - (BOOL)zoomOut;
206 
212 - (BMKCoordinateRegion)regionThatFits:(BMKCoordinateRegion)region;
213 
219 - (void)setRegion:(BMKCoordinateRegion)region animated:(BOOL)animated;
220 
226 - (void)setCenterCoordinate:(CLLocationCoordinate2D)coordinate animated:(BOOL)animated;
227 
232 -(UIImage*) takeSnapshot;
233 
238 -(UIImage*) takeSnapshot:(CGRect)rect;
239 
244 - (void)setCompassImage:(UIImage *)image;
245 
251 - (void)setVisibleMapRect:(BMKMapRect)mapRect animated:(BOOL)animate;
252 
258 - (BMKMapRect)mapRectThatFits:(BMKMapRect)mapRect;
259 
266 - (void)setVisibleMapRect:(BMKMapRect)mapRect edgePadding:(UIEdgeInsets)insets animated:(BOOL)animate;
267 
274 - (void)fitVisibleMapRect:(BMKMapRect)mapRect edgePadding:(UIEdgeInsets)insets withAnimated:(BOOL)animate;
275 
282 - (BMKMapRect)mapRectThatFits:(BMKMapRect)mapRect edgePadding:(UIEdgeInsets)insets;
283 
290 - (CGPoint)convertCoordinate:(CLLocationCoordinate2D)coordinate toPointToView:(UIView *)view;
291 
298 - (CLLocationCoordinate2D)convertPoint:(CGPoint)point toCoordinateFromView:(UIView *)view;
299 
306 - (CGRect)convertRegion:(BMKCoordinateRegion)region toRectToView:(UIView *)view;
307 
314 - (BMKCoordinateRegion)convertRect:(CGRect)rect toRegionFromView:(UIView *)view;
315 
322 - (CGRect)convertMapRect:(BMKMapRect)mapRect toRectToView:(UIView *)view;
323 
330 - (BMKMapRect)convertRect:(CGRect)rect toMapRectFromView:(UIView *)view;
331 
337 - (CGPoint)glPointForMapPoint:(BMKMapPoint)mapPoint;
338 
345 - (CGPoint *)glPointsForMapPoints:(BMKMapPoint *)mapPoints count:(NSUInteger)count;
346 
351 - (void)setMapCenterToScreenPt:(CGPoint)ptInScreen;
352 
357 - (BMKMapStatus*)getMapStatus;
358 
363 - (void)setMapStatus:(BMKMapStatus*)mapStatus;
364 
370 - (void)setMapStatus:(BMKMapStatus*)mapStatus withAnimation:(BOOL)bAnimation;
371 
378 - (void)setMapStatus:(BMKMapStatus*)mapStatus withAnimation:(BOOL)bAnimation withAnimationTime:(int)ulDuration;
379 
384 - (BOOL)isSurpportBaiduHeatMap;
385 
386 @end
387 
389 
391 @property (nonatomic, assign) BOOL baseIndoorMapEnabled;
392 
394 @property (nonatomic, assign) BOOL showIndoorMapPoi;
395 
402 - (BMKSwitchIndoorFloorError)switchBaseIndoorMapFloor:(NSString*)strFloor withID:(NSString*)strID;
403 
408 - (BMKBaseIndoorMapInfo*)getFocusedBaseIndoorMapInfo;
409 
410 @end
411 
413 
415 @property (nonatomic) BOOL showsUserLocation;
416 
418 @property (nonatomic) BMKUserTrackingMode userTrackingMode;
419 
421 @property (nonatomic, readonly, getter=isUserLocationVisible) BOOL userLocationVisible;
422 
427 - (void)updateLocationViewWithParam:(BMKLocationViewDisplayParam*)locationViewDisplayParam;
428 
433 -(void)updateLocationData:(BMKUserLocation*)userLocation;
434 @end
435 
437 
439 @property (nonatomic, readonly) NSArray *annotations;
440 
441 //设定是否总让选中的annotaion置于最前面
442 @property (nonatomic, assign) BOOL isSelectedAnnotationViewFront;
443 
448 - (void)addAnnotation:(id <BMKAnnotation>)annotation;
449 
454 - (void)addAnnotations:(NSArray *)annotations;
455 
460 - (void)removeAnnotation:(id <BMKAnnotation>)annotation;
461 
466 - (void)removeAnnotations:(NSArray *)annotations;
467 
473 - (BMKAnnotationView *)viewForAnnotation:(id <BMKAnnotation>)annotation;
474 
480 - (BMKAnnotationView *)dequeueReusableAnnotationViewWithIdentifier:(NSString *)identifier;
481 
487 - (void)selectAnnotation:(id <BMKAnnotation>)annotation animated:(BOOL)animated;
488 
494 - (void)deselectAnnotation:(id <BMKAnnotation>)annotation animated:(BOOL)animated;
495 
501 - (void)showAnnotations:(NSArray *)annotations animated:(BOOL)animated;
502 
508 - (NSArray *)annotationsInCoordinateBounds:(BMKCoordinateBounds) bounds;
509 
510 @end
513 
518 - (void)addOverlay:(id <BMKOverlay>)overlay;
519 
524 - (void)addOverlays:(NSArray *)overlays;
525 
530 - (void)removeOverlay:(id <BMKOverlay>)overlay;
531 
536 - (void)removeOverlays:(NSArray *)overlays;
537 
543 - (void)insertOverlay:(id <BMKOverlay>)overlay atIndex:(NSUInteger)index;
544 
550 - (void)exchangeOverlayAtIndex:(NSUInteger)index1 withOverlayAtIndex:(NSUInteger)index2;
551 
557 - (void)insertOverlay:(id <BMKOverlay>)overlay aboveOverlay:(id <BMKOverlay>)sibling;
558 
564 - (void)insertOverlay:(id <BMKOverlay>)overlay belowOverlay:(id <BMKOverlay>)sibling;
565 
567 @property (nonatomic, readonly) NSArray *overlays;
568 
574 - (BMKOverlayView *)viewForOverlay:(id <BMKOverlay>)overlay;
575 
576 @end
578 
583 - (void)addHeatMap:(BMKHeatMap*)heatMap;
584 
588 - (void)removeHeatMap;
589 
590 @end
591 
593 @protocol BMKMapViewDelegate <NSObject>
594 @optional
595 
600 - (void)mapViewDidFinishLoading:(BMKMapView *)mapView;
601 
606 - (void)mapViewDidFinishRendering:(BMKMapView *)mapView;
607 
613 - (void)mapView:(BMKMapView *)mapView onDrawMapFrame:(BMKMapStatus*)status;
614 
620 - (void)mapView:(BMKMapView *)mapView regionWillChangeAnimated:(BOOL)animated;
621 
627 - (void)mapView:(BMKMapView *)mapView regionDidChangeAnimated:(BOOL)animated;
628 
635 - (BMKAnnotationView *)mapView:(BMKMapView *)mapView viewForAnnotation:(id <BMKAnnotation>)annotation;
636 
642 - (void)mapView:(BMKMapView *)mapView didAddAnnotationViews:(NSArray *)views;
643 
649 - (void)mapView:(BMKMapView *)mapView didSelectAnnotationView:(BMKAnnotationView *)view;
650 
656 - (void)mapView:(BMKMapView *)mapView didDeselectAnnotationView:(BMKAnnotationView *)view;
657 
665 - (void)mapView:(BMKMapView *)mapView annotationView:(BMKAnnotationView *)view didChangeDragState:(BMKAnnotationViewDragState)newState
666  fromOldState:(BMKAnnotationViewDragState)oldState;
667 
673 - (void)mapView:(BMKMapView *)mapView annotationViewForBubble:(BMKAnnotationView *)view;
674 
681 - (BMKOverlayView *)mapView:(BMKMapView *)mapView viewForOverlay:(id <BMKOverlay>)overlay;
682 
688 - (void)mapView:(BMKMapView *)mapView didAddOverlayViews:(NSArray *)overlayViews;
689 
695 - (void)mapView:(BMKMapView *)mapView onClickedBMKOverlayView:(BMKOverlayView *)overlayView;
696 
702 - (void)mapView:(BMKMapView *)mapView onClickedMapPoi:(BMKMapPoi*)mapPoi;
703 
709 - (void)mapView:(BMKMapView *)mapView onClickedMapBlank:(CLLocationCoordinate2D)coordinate;
710 
716 - (void)mapview:(BMKMapView *)mapView onDoubleClick:(CLLocationCoordinate2D)coordinate;
717 
723 - (void)mapview:(BMKMapView *)mapView onLongClick:(CLLocationCoordinate2D)coordinate;
724 
732 - (void)mapview:(BMKMapView *)mapView onForceTouch:(CLLocationCoordinate2D)coordinate force:(CGFloat)force maximumPossibleForce:(CGFloat)maximumPossibleForce;
733 
738 - (void)mapStatusDidChanged:(BMKMapView *)mapView;
739 
746 - (void)mapview:(BMKMapView *)mapView baseIndoorMapWithIn:(BOOL)flag baseIndoorMapInfo:(BMKBaseIndoorMapInfo *)info;
747 
748 @end
此类表示地图状态信息
Definition: BMKMapStatus.h:15
该类是地图覆盖物View的基类,提供绘制overlay的接口但本身并无实现,所有地图覆盖物View需要继承自此类 ...
Definition: BMKOverlayView.h:12
NSString * text
点标注的名称
Definition: BMKMapView.h:23
矩形,用直角地理坐标表示
Definition: BMKTypes.h:124
此类表示定位图层自定义样式参数
Definition: BMKLocationViewDisplayParam.h:24
表示一个经纬度区域
Definition: BMKTypes.h:94
NSString * uid
点标注的uid,可能为空
Definition: BMKMapView.h:27
Definition: BMKMapView.h:388
热力图的绘制数据和显示样式类
Definition: BMKHeatMap.h:28
点击地图标注返回数据结构
Definition: BMKMapView.h:21
此类表示室内图基础信息
Definition: BMKBaseIndoorMapInfo.h:17
标注view
Definition: BMKAnnotationView.h:33
地图View类,使用此View可以显示地图窗口,并且对地图进行相关的操作
Definition: BMKMapView.h:56
Definition: BMKMapView.h:412
地图View类(和Overlay操作相关的接口)
Definition: BMKMapView.h:512
CLLocationCoordinate2D pt
点标注的经纬度坐标
Definition: BMKMapView.h:25
Definition: BMKMapView.h:577
Definition: BMKUserLocation.h:13
Definition: BMKMapView.h:436
表示一个经纬度区域
Definition: BMKTypes.h:100
地理坐标点,用直角地理坐标表示
Definition: BMKTypes.h:112