百度地图零基础到各种效果界面。上面的几行不用看,那是为了SEO,就是为了让我这篇博客让更多的人搜索到,上面的问题我都已经解决,我QQ915893620,有问题欢迎和我交流。我也会持续更新兄弟们的问题。下面是步骤:
1.申请百度地图key,要想使用百度地图,你需要申请key,这个key是安桌苹果通用,但是你的项目名必须跟你的key吻合,至于什么是项目名,不多说,到 址http://api.map.baidu.com/lbsapi/cloud/ios-mobile-apply-key.htm申请,
2.下载百度开发包,http://api.map.baidu.com/lbsapi/cloud/sdkiosdev-download.htm,
3.建立一个项目,项目名为cscapp,然后加入3个框架,MapKit.framework,CoreLocation.framework,QuartzCore.framework,将下载的开发包inc,libbaidumapapi.a,mapapi.bundle这三个文件加入到程序中
4.将ViewController的.m改成.mm
5.在委托中.h文件中中加入#import”BMapKit.h”,并声明变量BMKMapManager*_mapManager;在.m委托中加入
_
6.注意:在这里就开始运行程序的话,我在我的iphone上运行这个百度地图,会出现-[UIDeviceuniqueGlobalDeviceIdenti
这么一个bug,解决办法很多,但是我感觉最爽的一种办法就是加入4个文件NSString+MD5Addition,UIDevice+IdentifierAddition,直接加入到项目里面就可以,无需引入头文件,下载地址
7.在viewController.mm中的viewDidLoad改为如下代码
– (void)viewDidLoad
{
}
保存后运行,一个最简单的百度地图API应用就完成了
源代码下载 http://www.kuaipan.cn/file/id_30491149655344976.htm
百度地图的功能很强大,上面只是牛刀小试
第二部分
功能五,搜索,用的很广泛,这个功能很强大,你可以搜索某一坐标点附近的加油站,停车场,宾馆,酒店,餐厅,甚至厕所都能搜索到,比如说你想查找5000米内的加油站,以及1000米内的停车场。
flag = [_search
flag = [_search
然后用委托-(void)onGetPoiResult:(NSArray*)poiResultList searchType:(int)typeerrorCode:(int)error
输出结果。
-(void)Region{
}
清除地图上所有痕迹和路线
-(void)clereOldYJDH{
}
// 当选中一个annotationviews时,调用此接口
– (void)mapView:(BMKMapView *)mapViewdidSelectAnnotationView:(BMKAnnotationView *)view
{
}
// 当取消选中一个annotationviews时,调用此接口
– (void)mapView:(BMKMapView *)mapViewdidDeselectAnnotationVie
}
// 当mapView新添加annotationviews时,调用此接口
– (void)mapView:(BMKMapView *)mapViewdidAddAnnotationViews:(NSArray *)views
{
}
// 当点击annotationview弹出的泡泡时,调用此接口
– (void)mapView:(BMKMapView *)mapViewannotationViewForBubble:(BMKAnnotationView *)view
{
}
// 拖动annotationview时view的状态变化
– (void)mapView:(BMKMapView *)mapViewannotationView:(BMKAnnotationView *)viewdidChangeDragState:(BMKAnnotationViewDragSta
{
}
// 标注呈绿色样式大头钉
((BMKPinAnnotationView *)annotationView).pinColor =BMKPinAnnotationColorGre
// 允许用户拖动
[annotationView setDraggable:YES];
// 气泡框左侧显示的View,可自定义
annotationView.leftCalloutAccessoryView
// 气泡框右侧显示的View 可自定义
annotationView.rightCalloutAccessoryVie
// 让标注在进入界面时就处于弹出气泡框的状态
[annotationView setSelected:YES animated:YES];
// 整个标注的偏移量
annotationView.centerOffset = CGPointMake(0,-(annotationView.frame.size.height * 0.5));
annotationView.annotation = annotation;//绑定对应的标点经纬度
annotationView.canShowCallout = TRUE;//允许点击弹出气泡框
在地图上定制标注替代大头钉,可以将文字图片所有能加到view中的,都可以以大头钉的形式显示出来,需要将view转换为image主要代码,最重要的是知道这个原理,然后实现起来就很简单:
– (BMKAnnotationView *)mapView:(BMKMapView *)viewviewForAnnotation:(id
在这个委托中实现如下代码
-(UIImage *)getImageFromView:(UIView *)view{
}
在 上发现别人专门建立view来定制气泡和专门建立文件来定制大头钉,觉得那方法对代码管理起来更简单,可读性强。值得学习 http://www.kuaipan.cn/file/id_30491149655345085.htm
@interface KYBubbleView : UIScrollView{
}
#import “BMKPointAnnotation.h”
@interface KYPointAnnotation : BMKPointAnnotation {
}
@property NSUInteger tag;
@end
部分效果图
提示“message:@”您未安装百度地图,是否立即前往APPStore安装!“delegate:selfcancelButtonTitle:nilotherButtonTitles:@”立即安装“,@”稍后安装“,nil];
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!