百度地图(基础)

在您的AppDelegate.m文件中添加对BMKMapManager的初始化,并填入您申请的授权Key,示例如下

-(BOOL)application:(UIApplication*)application  didFinishLaunchingWithOptions:(NSDictionary*)launchOptions{

// 要使用百度地图,请先启动

BaiduMapManager_mapManager=[[BMKMapManager alloc]init];// 如果要关注网络及授权验证事件,请设定   generalDelegate参数

BOOL ret=[_mapManager start:@"在此处输入您的授权Key"generalDelegate:nil];

if(!ret){

NSLog(@"manager start failed!");

}

// Add the navigation controller's view to the window and display.

[self.windowaddSubview:navigationController.view];

[self.windowmakeKeyAndVisible];returnYES;}

上面这段话不用讲了吧,看不懂?私了。。。。


#import //引入base相关所有的头文件

#import //引入地图功能所有的头文件

#import //只引入所需的单个头文件

实现BMKMapViewDelegate

自2.0.0起,BMKMapView新增viewWillAppear、viewWillDisappear方法来控制BMKMapView的生命周期,并且在一个时刻只能有一个BMKMapView接受回调消息,因此在使用BMKMapView的viewController中需要在viewWillAppear、viewWillDisappear方法中调用BMKMapView的对应的方法,并处理delegate,代码如下:

(void)viewWillAppear:(BOOL)animated{

[_mapView viewWillAppear];

_mapView.delegate=self;// 此处记得不用的时候需要置nil,否则影响内存的释放

}

-(void)viewWillDisappear:(BOOL)animated{

[_mapView viewWillDisappear];

_mapView.delegate=nil;// 不用时,置nil

}

换句话说要让百度地图和你的控制器共存亡,这个做的很好哦

_mapView= [[BMKMapViewalloc]initWithFrame:CGRectMake(0,64,SCREEN_WIDTH,SCREEN_HEIGHT-64)];

_mapView.delegate=self;设置代理

[self.viewaddSubview:_mapView];

_mapView.mapType=BMKMapTypeStandard;(地图显示类型:0空白,1标准,2卫星)

_mapView.showsUserLocation=YES;//显示定位图层

_mapView.zoomLevel=19;//地图级别

_mapView.minZoomLevel=15;//最小级别(就是可以让用户放大缩小到什么比例)

_mapView.maxZoomLevel=20;//最大级别

//_mapView.userTrackingMode = BMKUserTrackingModeFollow;设置定位模式

_mapView.showMapScaleBar=YES;显示比例尺

注意:百度地图是没有放大缩小按钮的,自己去搞按钮然后设置zoomLevel

然后就是helloBaiDuMap,默认显示北京天安门广场

你可能感兴趣的:(百度地图(基础))