IOS 设置百度地图自定义标注图片,自定义泡泡

#pragma mark - BMKMapViewDelegate

// 根据anntation生成对应的View

- (BMKAnnotationView *)mapView:(BMKMapView *)mapView viewForAnnotation:(id <BMKAnnotation>)annotation

{

//普通annotation

NSString *AnnotationViewID = @"ClusterMark";

ClusterAnnotation *cluster = (ClusterAnnotation*)annotation;

ClusterAnnotationView *annotationView = [[ClusterAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationViewID];

annotationView.size = cluster.size;

annotationView.canShowCallout = NO;//在点击大头针的时候会弹出那个黑框框

annotationView.draggable = NO;//禁止标注在地图上拖动

annotationView.annotation = cluster;

//    annotationView.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:annotation.subtitle]]];

annotationView.centerOffset=CGPointMake(0,0);

UIView *viewForImage=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 110, 110)];

UIImageView *imageview=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 110, 110)];

[imageview setImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:annotation.subtitle]]]];

imageview.layer.masksToBounds=YES;

imageview.layer.cornerRadius = 10;

[viewForImage addSubview:imageview];

annotationView.image=[self getImageFromView:viewForImage];

return annotationView;

}

-(UIImage *)getImageFromView:(UIView *)view{

UIGraphicsBeginImageContext(view.bounds.size);

[view.layer renderInContext:UIGraphicsGetCurrentContext()];

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return image;

}

//气泡框左侧显示的View,可自定义
annotationView.leftCalloutAccessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon_location.png"]];
//气泡框右侧显示的View 可自定义
annotationView.rightCalloutAccessoryView =selectButton;
//让标注在进入界面时就处于弹出气泡框的状态
[annotationView setSelected:YES animated:YES];

时间: 2024-08-24 15:49:54

IOS 设置百度地图自定义标注图片,自定义泡泡的相关文章

IOS 更改百度地图的定位图片

使用了百度地图的SDK,定位图片一直是蓝色的小圆点,很不喜欢,想换成自定义的图片,在网上搜罗了一大通,找到了解决的方案. 写下如下代码: //定位图层自定义样式参数 BMKLocationViewDisplayParam *displayParam = [BMKLocationViewDisplayParam new]; displayParam.isRotateAngleValid =YES; displayParam.isAccuracyCircleShow =YES; displayPar

百度地图api窗口信息自定义

百度地图加载完后,完全可以用dom方法操作,比较常用的就是点击mark的弹窗,利用jQuery可以很快的创建弹窗,需要注意的就是地图都是异步加载,所以绑定时间要用 jQuery 事件 - delegate() 方法 原文链接http://www.w3school.com.cn/jquery/event_delegate.asp #pop为弹窗容器,#info为弹窗信息 将#info设置成绝对定位信息窗就可以流动了 demo <!DOCTYPE html> <html> <he

百度地图API标注+时间轴组合

百度地图API标注+时间轴组合 到新公司实习第八天,Boos让我结合百度地图api做一个动态展示标注变化的组件,要求地图展示某一天的标注,时间轴要求可以动态播放每一天的标注变化...然后我就开始coding... 准备工作: 申请百度api密钥(具体方法我也不多写了,大家应该都会) 了解一下百度地图API的开发指南和类参考文档(如果嫌麻烦的话 可以直接看Demo示例) 一.首先,先加载地图,你可以用实际的经纬度定位.浏览器定位.根据ip定位.根据城市名定位,这个你可以自己选择 // 创建Map实

IOS SDK百度地图不能正常显示,只显示网格

在使用百度地图开发的时候出现的问题,问题为: IOS SDK百度地图不能正常显示,只显示网格 如图所示 在这里出现的问题纠结了很久,最后发现在API控制台创建应用的时候需要输入安全码 之后知道此安全码即为工程中的Bundle Identifier 所以我们填写的时候需要将工程中的info.plist文件设置Bundle Identifier和安全码一样即可 此外还有部分需要注意的地方 注意: 1. 为了给用户提供更优质的服务,iOS SDK自v2.0.2版本开始采用了全新的Key验证体系.因此,

iOS开发百度地图常见问题及解决办法

1.64bit模拟器不能正常工作 解决:请将Xcode5 的 Project -> Edit Active Target -> Build Settings -> Linking -> Other Linker Flags 中的"-ObjC"修改为"-all_load" 2.程序死在 _mapView = [[BMKMapView alloc] init]; 解决:很可能是由于没有在appDelegate里面初始化_mapManager 3.

iOS关于百度地图坐标偏移的处理

定义一个宏来转换 #define CBCoorConvert(coor) BMKCoorDictionaryDecode(BMKBaiduCoorForGcj(coor)) 使用 - (id)initWithJson:(NSDictionary *)json { if (self = [super initWithJson:json]) { self.mileageNew = [json objectForKey:@"newMileage"]; CLLocationCoordinate

【百度地图API】如何制作泡泡放大镜?

原文:[百度地图API]如何制作泡泡放大镜? 任务描述: 我不喜欢API提供的缩放控件耶…… 我能不能使用其他方式放大地图勒? 当然阔以啦! 现在就来教大家如何动手制作一个可爱的泡泡放大镜! 使用它,就可以放大地图上的任何细节啦~ 如何实现: 创建主地图map1,在主地图上创建一个标注,并对标注添加一个信息窗口. 在信息窗口里面,创建一张小地图,地图级别为18(足够大啦). 默认设置信息窗口关闭,点击红色标注后打开信息窗口. 操作试试: 点击红色标注,立马弹出来一个泡泡放大镜! 你还可以移动主地

iOS百度地图-BMK标注&amp;amp;覆盖物

在iOS开发中,地图算是一个比较重要的模块.我们常用的地图有高德地图,百度地图,谷歌地图,对于中国而言,苹果公司已经不再使用谷歌地图,官方使用的是高德地图.下面将讲述一下百度地图开发过程中的一些小的知识点. 对于如何配置百度地图的开发环境,在此不再讲述,具体可以参考:http://developer.baidu.com/map/index.php?title=iossdk/guide/buildproject 百度地图iOS的API下载地址:http://developer.baidu.com/

百度地图SDK3.2.0—自定义缩放按钮

转载注明出处:http://blog.csdn.net/zhshulin/article/details/41378927 百度地图SDK3.0今年6月5号更新之后,全面升级SDK接口设计,不兼容老版本. 本文简介:百度地图自带缩放控件很丑,即使在9月18号发布的3.1.1版本中开放了调整位置的接口依然无法满足我的需要,而且百度地图自己的产品就是位于右侧上下排列的两个缩放按钮,看着舒服,用着方便.故而本文说明的就是模仿这种实现的一个简单方法. 这是一个大神的解决方案,他用的百度地图版本为2.3,