Android高德地图自定义Markers的例子

下文为各位重点介绍关于Android高德地图自定义Markers的例子,希望这篇文章能够让各位理解到Android高德地图自定义Markers的方法。

之前的博客里说了地图的嵌入和定位,今天就说说在地图上显示一些我们想要的。在地图中有自带的Markers(标记),但是它只显示一个椭圆的图标,一般是不符合我们的需求的,这样就要我们自己来自定义。首先标记有下面一些属性;

1.position(Required) 在地图上标记位置的经纬度值。参数不能为空。

2.title 当用户点击标记,在信息窗口上显示的字符串。

3.snippet 附加文本,显示在标题下方。

4.draggable 如果您允许用户可以自由移动标记,设置为“ true ”。默认情况下为“ false ”。

5.visible 设置“ false ”,标记不可见。默认情况下为“ true ”。

6.anchor图标摆放在地图上的基准点。默认情况下,锚点是从图片下沿的中间处。

7.perspective设置 true,标记有近大远小效果。默认情况下为 false。

8.可以通过Marker.setRotateAngle() 方法设置标记的旋转角度,从正北开始,逆时针计算。如设置旋转90度,Marker.setRotateAngle(90)

9.通过setFlat() 方法设置标志是否贴地显示

自定义图标通常由 BitmapDescriptor 设置。我们可以在类 BitmapDescriptorFactory 使用以下其中一种方法定义。

1.fromAsset(String assetName) 在 assets 目录中使用图像创建自定义标记。

2.fromBitmap (Bitmap image) 使用位图图像创建自定义标记。

3.fromFile (String path) 指定路径的文件创建自定义图标。

4.fromResource (int resourceId) 使用已经存在的资源创建自定义图标。先看一下要实现的效果:

地图自带标记  实现效果

实现思路是:自定义布局,获取数据填入相应位置,然后将view转成Bitmap,调用AMap.addMarker(markerOptions) 方法添加到地图上。

  1. 自定义布局并填充数据:

for (int i = 0; i < positionEneityList.size(); i++) {if (positionEneityList.get(i).getType().equals("1")) {View view = View.inflate(getActivity(),R.layout.view_day, null);TextView tv_price = (TextView) view.findViewById(R.id.tv_price);TextView tv_price_status = (TextView) view.findViewById(R.id.tv_price_status);tv_price.setText(positionEneityList.get(i).getPrice());tv_price_status.setText("元/时");Bitmap bitmap = CommentActivity.convertViewToBitmap(view);drawMarkerOnMap(new LatLng(Double.parseDouble(positionEneityList.get(i).getLatitude()), Double.parseDouble(positionEneityList.get(i).getLongitude())), bitmap, positionEneityList.get(i).getId());}}

2.转成Bitmap:

//view 转bitmappublic static Bitmap convertViewToBitmap(View view) {view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());view.buildDrawingCache();Bitmap bitmap = view.getDrawingCache();return bitmap;}

3.添加到地图上:

/*** 在地图上画marker** @param point      marker坐标点位置(example:LatLng point = new LatLng(39.963175,*                   116.400244); )* @param markerIcon 图标* @return Marker对象*/private Marker drawMarkerOnMap(LatLng point, Bitmap markerIcon, String id) {if (aMap != null && point != null) {Marker marker = aMap.addMarker(new MarkerOptions().anchor(0.5f, 1).position(point).title(id).icon(BitmapDescriptorFactory.fromBitmap(markerIcon)));return marker;}return null;}

这样就实现了上述效果。

转载于:https://www.cnblogs.com/zhujiabin/p/5564928.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490547.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

javaweb教务管理系统_基于Java web的教务管理系统

源码编号&#xff1a;B-E00033 点击查看(分类规则)项目类型&#xff1a;Java EE项目(非开源)项目名称&#xff1a;基于Java web的教务管理系统(TeachingSystem)当前版本&#xff1a;V1.0.1版本难度等级&#xff1a;✩✩复杂程度&#xff1a;✩✩ 点击查看难度等级用户类型&…

Science揭秘:为什么“好记性不如烂笔头”?

来源&#xff1a;中国生物技术网你还能记起你小学班长的名字吗&#xff1f;但我相信你肯定能记得同桌的名字&#xff0c;和与其共同经历的种种。但要再问你昨天新来同事的名字&#xff0c;你是否可以不假思索的回答出来&#xff1f;是不是有点儿困难&#xff1f;那为什么你能脱…

中国机器人产业发展报告(2019)正式发布!

来源&#xff1a;世界机器人大会2019年8月25日&#xff0c;《中国机器人产业发展报告&#xff08;2019&#xff09;》于2019世界机器人大会闭幕式上正式发布&#xff0c;该报告为工业和信息化部2019-2021年财政专项《我国机器人产业发展水平评估体系构建与智能机器人产业链增长…

matlab/ansys协同的一个例子

前段时间找了点Matlab与ANSYS协同工作的资料&#xff0c;在我看来所谓协同是ANSYS将结果写到文件然后Matlab读&#xff0c;或者Matlab写数据到文件ANSYS读&#xff0c;协同是通过读写文件实现的。我找了个瞬态分析的例子&#xff0c;写了APDL&#xff0c;将网上找到的ANSYS结果…

security center拒绝访问_Steam被曝出0day提权漏洞,但厂商拒绝修复

近期&#xff0c;全球流行的Steam游戏客户端被曝出0day提权漏洞&#xff0c;影响全球一亿多Steam用户。该漏洞可让机器上的低权限用户以SYSTEM权限运行程序。这意味着恶意软件很可能利用这个漏洞对受害者的机器进行深度破坏。考虑到Steam是一款总用户1.2亿&#xff0c;日常在线…

人工智能第一股“旷视科技”赴港递交IPO材料 半年亏损52亿估值280亿

来源&#xff1a; 人工智能和大数据8月25日&#xff0c;人工智能领域“独角兽”旷视科技正式向港交所递交IPO材料。招股书显示&#xff0c;旷视拟采用“同股不同权”方式上市&#xff0c;“同股不同权”股东为创始人兼CEO印奇以及两位联合创始人唐文斌、杨沐&#xff0c;三人占…

python可以代替plc吗_PLC可以代替安全控制器吗?电气工程师告诉你

导读 国内的企业越来越重视设备的安全防护&#xff0c;可事故却频频发生&#xff0c;这是为什么呢&#xff1f;主要还是源自于大家对于安全防护知识上存在的诸多误区&#xff0c;比如很多人认为&#xff0c;稳定性高、性能强的PLC即可替代安全控制器的作用&#xff0c;其实这就…

Nature展示迄今为止最详细的“人脑零部件清单”

来源&#xff1a;中国生物技术网近日&#xff0c;美国艾伦脑科学研究所的一项新研究为我们展示了迄今为止最详细的“人脑零部件清单”&#xff0c;阐明了人类大脑皮层的细胞结构&#xff0c;它对于理解我们的认知能力和对疾病的易感性至关重要。该研究近日已发表在《Nature》上…

beautifulsoup网页爬虫解析_爬虫第三天——初识Xpath

解析神器Xpath&#xff1a;1. 什么是XpathXPath即为XML路径语言&#xff08;XML Path Language&#xff09;&#xff0c;它是一种用来确定XML文档中某部分位置的语言。XPath基于XML的树状结构&#xff0c;提供在数据结构树中找寻节点的能力。起初XPath的提出的初衷是将其作为一…

机器人4.0时代来临!四大核心技术助推大规模商用部署

来源&#xff1a;北京物联网智能技术应用协会当前&#xff0c;全球机器人市场规模持续扩大&#xff0c;工业机器人市场增速稳定&#xff0c;服务机器人增速突出。2018 年&#xff0c;全球机器人市场规模达 298.2 亿美元&#xff0c; 2013-2018 年的平均增长率约为 15.1%。 在装…

Chapter2 MSP430硬件结构

1、总架构 MSP430单片机采用冯诺依曼结构&#xff0c;包含16位RISC CPU、存储器、片内外设、时钟系统、仿真系统以及数据总线和地址总线。 2、MSP430X CPU(CPUX) DB    AB          ALU位数 MSP430F1XX 16位  16位(最大寻址64KB) …

Matlab给Ansys助攻

大家好&#xff0c;今天二狗准备介绍一下如何利用matlab写一些简单的脚本去解决一些复杂的事情&#xff0c;比如为大型有限元软件Ansys服务&#xff08;类比&#xff09;包括数值模拟的前处理和后处理&#xff0c;都大有作为。用过Ansys&#xff08;没有Ctrlz&#xff09;的童鞋…

归并排序的时间复杂度为什么为nlogn

归并排序的递归过程如下&#xff0c;该递归树的高度为log2n&#xff08;计算过程&#xff1a;假设待排序的数组元素个数为n&#xff0c;设高度为x&#xff0c;x意味着n个元素需要连续二分x次才剩下1个元素&#xff0c;即n/2^x1&#xff0c;xlog2n&#xff09;&#xff0c;每一层…

深度解读达芬奇架构:华为AI芯片的“秘密武器”

本文转自华为官网2019年6月&#xff0c;华为发布全新8系列手机SoC芯片麒麟810&#xff0c;首次采用华为自研达芬奇架构NPU&#xff0c;实现业界领先端侧AI算力&#xff0c;在业界公认的苏黎世联邦理工学院推出的AI Benchmark榜单中&#xff0c;搭载麒麟810的手机霸榜TOP3&#…

记忆化搜索 codevs 2241 排序二叉树

codevs 2241 排序二叉树 ★ 输入文件&#xff1a;bstree.in 输出文件&#xff1a;bstree.out 简单对比时间限制&#xff1a;1 s 内存限制&#xff1a;128 MB 【问题描述】 一个边长为n的正三角形可以被划分成若干个小的边长为1的正三角形&#xff0c;称为单位三角形。 …

窥探当今AI芯片中的类脑模型

来源&#xff1a;脑人言撰文丨邓 磊&#xff08;加州大学-圣塔芭芭拉分校UCSB 博士后&#xff09;责编丨高茂森 Soma排版丨夏獭科学研究的动机&#xff0c;并非仅仅是出于能看到多酷炫的应用&#xff0c;而是因为我们尚有诸多未知世界需要探寻&#xff0c;这是一切应用的前提。…

mysql调优_MYSQL企业常用架构与调优经验分享

一、选择Percona Server、MariaDB还是MYSQL1、Mysql三种存储引擎MySQL提供了两种存储引擎&#xff1a;MyISAM和 InnoDB&#xff0c;MySQL4和5使用默认的MyISAM存储引擎。从MYSQL5.5开始&#xff0c;MySQL已将默认存储引擎从MyISAM更改为InnoDB。MyISAM没有提供事务支持&#xf…

SpringMVC学习--参数绑定

spring参数绑定过程 从客户端请求key/value数据&#xff0c;经过参数绑定&#xff0c;将key/value数据绑定到controller方法的形参上。springmvc中&#xff0c;接收页面提交的数据是通过方法形参来接收。而不是在controller类定义成员变更接收。 默认支持的类型直接在controll…

现代物理学7大经典问题,你能理解几个?或许一个都不能理解

来源&#xff1a;搜狐新闻算法与数学之美相对论相对论是物理学中两大著名理论之一&#xff0c;两者都是阿尔伯特爱因斯坦提出的。1905年爱因斯坦出版了狭义相对论&#xff0c;后者确定最终宇宙速度极限&#xff1a;光速。并称时间因某物体移动的速度而实现加速或者减慢。1916年…

unity asset store下载不了_Unity手游实战:从0开始SLG——资源管理系统-基础篇(三)AssetBundle原理...

先用一句话介绍一下AssetBundle吧。AssetBundle系统提供了一种压缩文件的格式&#xff0c;可以把1到多个文件进行索引和序列化。Unity项目在交付安装之后&#xff0c;会通过AssetBundle对不包含代码的资源进行更新。这就允许开发人员先提交一个小的应用程序包&#xff0c;将运行…