大头针固定在屏幕上

///是否固定在屏幕一点, 注意,拖动或者手动改变经纬度,都会导致设置失效

@property (nonatomic, assign, getter = isLockedToScreen) BOOL lockedToScreen;

///固定屏幕点的坐标

@property (nonatomic, assign) CGPoint lockedScreenPoint;

//MAPointAnnotation  *annotation;//系统大头针,继承至MAAnnotation

//MAPinAnnotationView  //系统预定好的一个annotationView提供类似大头针的效果

MAAnnotationView 标注View 可以通过继承它来自定义大头针(标注)

///提供类似大头针效果的annotation view

@interface MAPinAnnotationView : MAAnnotationView

self.annotation.lockedScreenPoint = CGPointMake(self.mapView.centerX, self.mapView.centerY);

/**

* @brief 设置当前地图的中心点,改变该值时,地图的比例尺级别不会发生变化

* @paramcoordinate要设置的中心点

* @paramanimated是否动画设置

*/

- (void)setCenterCoordinate:(CLLocationCoordinate2D)coordinateanimated:(BOOL)animated;

[self.mapView setCenterCoordinate:self.coordinate animated:YES];

self.annotation.lockedToScreen = YES;

被固定在地图中央的大头针,在移动地图的时候,大头针跳起,移动结束后落下

实现过程:用了两张图片  根据情况改变自定义大头针的图片

/**

* @brief 地图区域改变过程中会调用此接口 since 4.6.0

* @parammapView地图View

*/

- (void)mapViewRegionChanged:(MAMapView *)mapView;

/**

* @brief 地图区域即将改变时会调用此接口

* @parammapView地图View

* @paramanimated是否动画

*/

- (void)mapView:(MAMapView *)mapView regionWillChangeAnimated:(BOOL)animated;

在地图区域将要改变,改变过程中两个代理方法里面用跳起的图片

/**

* @brief 地图区域改变完成后会调用此接口

* @parammapView地图View

* @paramanimated是否动画

*/

- (void)mapView:(MAMapView *)mapView regionDidChangeAnimated:(BOOL)animated;

在地图区域改变完成后用落下的图片

大头针气泡是自定义UIView

允许显示showCallOut ,那就通过addSubView的方式展示在大头针上面(self)

[self addSubview:self.qiPaoView];

[self.qiPaoView mas_makeConstraints:^(MASConstraintMaker *make) {

make.bottom.mas_equalTo(self.mas_top);

make.centerX.mas_equalTo(self);

}];

MAUserLocationRepresentation:地图上当前用户位置显示控制

向地图上添加大头针

[mapView addAnnotation:annotation];

地图上展示的是MAAnnotationView、MAPinAnnotationView、自定义annotationView

- (MAAnnotationView *)mapView:(MAMapView *)mapView viewForAnnotation:(id)annotation

{

if([annotationisKindOfClass:[MAUserLocation class]]) {

//可以展示自定义annotationView

/*      static

NSString*userLocationStyleReuseIndetifier =@"userLocationStyleReuseIndetifier";

DEACustomAnnotationView*annotationView = (DEACustomAnnotationView*)[mapViewdequeueReusableAnnotationViewWithIdentifier:userLocationStyleReuseIndetifier];

if(annotationView ==nil) {

annotationView = [[DEACustomAnnotationViewalloc]initWithAnnotation:annotation  reuseIdentifier:userLocationStyleReuseIndetifier];

}*/

//也可以自定义精度圈

MAUserLocationRepresentation *r = [[MAUserLocationRepresentation alloc]init];

r.showsAccuracyRing = NO;///精度圈是否显示,默认YES

r.showsHeadingIndicator = NO;///是否显示方向指示(MAUserTrackingModeFollowWithHeading模式开启)。默认为YES

r.fillColor = [UIColor redColor];///精度圈 填充颜色, 默认 kAccuracyCircleDefaultColor

r.strokeColor = [UIColor blueColor];///精度圈 边线颜色, 默认 kAccuracyCircleDefaultColor

r.lineWidth = 2;///精度圈 边线宽度,默认0

r.enablePulseAnnimation = NO;///内部蓝色圆点是否使用律动效果, 默认YES

r.locationDotBgColor = [UIColor greenColor];///定位点背景色,不设置默认白色

r.locationDotFillColor = [UIColor grayColor];///定位点蓝色圆点颜色,不设置默认蓝色

r.image = [UIImage imageNamed:@"你的图片"]; ///定位图标, 与蓝色原点互斥

[self.mapView updateUserLocationRepresentation:r];

//若什么都不展示

return nil;

}

地图上展示不同数据的annotationview

可以继承MAPointAnnotation 实现自定义大头针加一个属性 index 用来区分是哪个大头针

在view上展示内容的时候,根据index取出相应的数据

if([annotation isKindOfClass:[HHPointAnnotation class]])

{

static NSString*customReuseIndetifier =@"customReuseIndetifier";

HHPointAnnotation*ano = annotation;

CustomAnnotationView*annotationView = (CustomAnnotationView*)[mapView dequeueReusableAnnotationViewWithIdentifier:customReuseIndetifier];

if(annotationView ==nil)

{

annotationView = [[CustomAnnotationView alloc]initWithAnnotation:annotationreuseIdentifier:customReuseIndetifier];

annotationView.canShowCallout=NO;

annotationView.draggable=YES;

}

AnnotationModel *model = self.dataArray[ano.index];

annotationView.image= [UIImage imageNamed:model.imageName];

return annotationView;

}

高德地图大头针功能_iOS高德地图大头针的运用相关推荐

  1. ios 百度地图指定区域_iOS百度地图简单使用详解

    百度地图 iOS SDK是一套基于iOS 5.0及以上版本设备的应用程序接口,不仅提供展示地图的基本接口,还提供POI检索.路径规划.地图标注.离线地图.定位.周边雷达等丰富的LBS能力 . 今天主要 ...

  2. 高德地图大头针功能_高德地图 (多个大头针显示)

    高德地图 运用场景:先获取本机经纬度 ,从服务端获取周围的小区和停车场的经纬度,通过服务端返回的type赋值给大头针的title来判断是小区还是停车场 1,首先实例化地图 #import #impor ...

  3. ios 百度地图指定区域_ios百度地图的使用(普通定位、反地理编码)

    iOS定位 - 普通定位(没有地图) - 反地理编码(得到具体位置),下面通过代码给大家详解,代码如下: #import 使用到的头文件 要引入CoreLocation这个包 使用的代理名称 //1. ...

  4. ios 百度地图指定区域_IOS 百度地图定位,显示地理位置

    最近公司要做一个类似与美团的东西,让我用百度地图来进行定位,并显示地理信息. 预览图 那么我们要如何做呢,直接上代码 先看看包结构,要把需要用到的库都要引入进来. 包结构 注意:appdelegate ...

  5. vue + echarts+地图实现功能,实现地图上数据显示,四川省地图echarts地市数据案列

    echart在开发地图时,会遇到下钻显示子区域地图数据.比如四川省,下钻到市级成都市,再下钻到区级.下载地址:DataV.GeoAtlas地理小工具系列 1.首先需要下载对应的地图,如果是联网的可以直 ...

  6. ios 点生成线路 百度地图_iOS百度地图的使用

    项目最近对地图整体模块进行了重构, 为了和我们的安卓同学保持统一,放弃了原本就很6的高德地图,全部改用百度地图(虽然我觉得百度地图不好用,文档也一般,但是没办法啊,没办法啊 啊啊啊啊啊..). 项目中 ...

  7. 基于 Openlayers 实现的地图常用功能工具集合

    基于 Openlayers 实现的地图常用功能工具集合 地图工具介绍 使用示例 在项目开发中,经常会需要使用一些坐标做测试,或者手动标绘点线面,或者坐标转换等. 使用代码当然是可以做到的,但是有时候懒 ...

  8. 高德地图大头针功能_【iOS】高德地图MAMapKit的使用:地图显示、添加大头针、导航、定位功能介绍...

    最近在做基于高德地图的定位.导航及添加大头针的功能,特此记录下来...方便刚接触的同学参考... 一.申请 Key:获取用户Key 2.在"KEY管理"页面点击上方的"获 ...

  9. 高德推出查岗功能_新型「查岗」工具?高德推出「家人地图」新功能

    苹果为 iPhone.iPad.iPod touch 内置了「查找」app,通过这个应用用户不仅可以快速定位不同设备,还可以与家人和朋友共享位置.此外,iOS 原生地图应用也支持「共享到达时间」,方便 ...

  10. 最新车载导航端口检测工具_高德地图这个功能 把微信都没做好的车载社交解决了?...

    在汽车网联化和智能化带给人们的诸多想象里,车内社交似乎是最虚无缥缈的那个.在移动互联网领域,微信通过满足人们社交需求这个基本点,构建起庞大的用户群体,展示出巨大的市场前景.但在驾车场景下,车载社交该怎 ...

最新文章

  1. 『中级篇』k8s基础网络Cluster Network(66)
  2. OpenCV 4.0 Dis光流算法 运动检测
  3. linux 红帽 查看分辨率,求诸位帮个忙,红帽linux怎么该屏幕分辨率
  4. 游戏测试:如何有效地报告 Bug?
  5. 动态内存的基本功能和使用
  6. 海量数据拆分到nosql系统的一种方案
  7. 敏捷中gwt含义_在您的GWT应用程序中添加JSON功能
  8. java在线网页客服聊天_管理员消息java 网站用户在线和客服聊天
  9. java简单ai聊天_一个hello/hi的简单的网络聊天程序——JAVA
  10. markdown 编辑器_推荐一款公众号 Markdown 编辑器
  11. springmvc项目,浏览器报404错误的问题
  12. 3.性能之巅 洞悉系统、企业与云计算 --- 操作系统
  13. 孙鑫VC学习笔记:第十一讲 (五) 如何使窗口具有滚动条
  14. java 旅游网站项目实现_基于jsp的旅游网站a-JavaEE实现旅游网站a - java项目源码
  15. 《游戏学习》| html5 飞翔的小鸟 小游戏代码示例
  16. vue项目PC端字体大小自适应
  17. 华旭 身份证读卡器测试软件_华旭身份证读卡器阅读软件8.0版本 支持免驱
  18. MPI点对点通信函数与通信模式
  19. Exp 8 Web基础 ————20164316张子遥
  20. 嵌入式Linux--制作根文件系统--buildroot

热门文章

  1. CPU 是怎么认识代码的?
  2. three 星空穿梭,常见的星空星星移动
  3. ISA-95/B2MML教程 : 从用例到XML消息的整合实践
  4. 代理服务器出问题或挂完代理后网络连接且无网络
  5. OSPF 理论二 (赤诚善良 永远热爱)
  6. 【软件定义汽车】-【架构篇】-迈向SOA软件架构,软件定义汽车成为现实
  7. flink程序在消费kafka数据时出现Error sending fetch request问题
  8. (旧)子数涵数·PS——冷色调与LOMO
  9. linux上删除rime方案_安装linux中文输入法rime并配置
  10. 英语语法(简单句型篇)