高德地图功能点使用整理
1.设置多个marker,并给多个marker设置点击事件。(如果想设置单个的话,可以用marker.showinfowindow)
for (i in 0..2) {val latitude = 0.0val longitude = 0.0val latLng = LatLng(latitude, longitude)val view = LayoutInflater.from(context).inflate(R.layout.mapfrag_marker, null)val tv = view?.findViewById<View>(R.id.tv_name) as TextViewtv.text = "我是marker"val bitmapDescriptor = BitmapDescriptorFactory.fromBitmap(convertViewToBitmap(view))val markerOption = MarkerOptions()markerOption.position(latLng)markerOption.draggable(true)//设置Marker可拖动markerOption.isFlat = true//设置marker平贴地图效果markerOption.title(i.toString())markerOption.snippet(i.toString())markerOption.icon(bitmapDescriptor)aMap?.addMarker(markerOption) } //如果marker只是一个图片 Glide.with(this).load(bean.getResult()?.profilePhoto.toString()).asBitmap().skipMemoryCache(true).into(object : SimpleTarget<Bitmap>() {override fun onResourceReady(resource: Bitmap?, glideAnimation: GlideAnimation<in Bitmap>?) {//待图片加载完毕后再设置bitmapDesiv.setImageBitmap(resource)val bitmapDescriptor = BitmapDescriptorFactory.fromBitmap(convertViewToBitmap(view))val markerOption_ = MarkerOptions()markerOption_.position(latLng)// 将Marker设置为贴地显示,可以双指下拉地图查看效果markerOption_.isFlat = true//设置marker平贴地图效果markerOption.anchor(0f, 0f)markerOption_.icon(bitmapDescriptor)maker_ = aMap_.addMarker(markerOption_)}})//将view转换为bitmap private fun convertViewToBitmap(view: View): Bitmap {view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED))view.layout(0, 0, view.measuredWidth, view.measuredHeight)view.buildDrawingCache()return view.drawingCache}//设置点击事件 val markerClickListener = AMap.// 返回 true 则表示接口已响应事件,否则返回falseOnMarkerClickListener {Log.e("snippet", it.snippet)//可以根据snippet来区分是哪个markertrue //点击 marker 是否移动到中心} // 绑定 Marker 被点击事件 aMap?.setOnMarkerClickListener(markerClickListener)
2.设置定位中心点。
val latLng = LatLng(latitude, longitude) aMap?.moveCamera(CameraUpdateFactory.changeLatLng(latLng))//定位中心点
3.划轨迹。主要看大致地理位置。
// 绘制一条直线aMap.addPolyline(PolylineOptions() // .add( // LatLng(40.086796, 116.397266), // LatLng(41.995827, 116.480393), // LatLng(39.996057, 116.480003), // LatLng(42.995921, 116.480096) // )//集合数据.addAll(listTrack)//线的宽度.width(20f).setDottedLine(false).geodesic(true)//颜色.color(Color.argb(255, 255, 0, 0)))
4.搜索地点。
private fun searchPoint(key: String) {val query = PoiSearch.Query(key, "", "")//keyWord表示搜索字符串,//第二个参数表示POI搜索类型,二者选填其一,选用POI搜索类型时建议填写类型代码,码表可以参考下方(而非文字)//cityCode表示POI搜索区域,可以是城市编码也可以是城市名称,也可以传空字符串,空字符串代表全国在全国范围内进行搜索query.pageSize = 100// 设置每页最多返回多少条poiitemquery.pageNum = 1 //设置查询页码val poiSearch = PoiSearch(this, query)poiSearch.setOnPoiSearchListener(object : PoiSearch.OnPoiSearchListener {override fun onPoiItemSearched(p0: PoiItem?, p1: Int) {}override fun onPoiSearched(p0: PoiResult?, p1: Int) {// 处理列表数据}})poiSearch.searchPOIAsyn() }
5.定位。
val locationStyle = MyLocationStyle() locationStyle.interval(2000)//设置连续定位模式下的定位间隔,只在连续定位模式下生效,单次定位模式下不会生效。单位为毫秒。 locationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATE)//连续定位、蓝点不会移动到地图中心点,定位点依照设备方向旋转,并且蓝点会跟随设备移动。 locationStyle.showMyLocation(true)//设置是否显示定位小蓝点,用于满足只想使用定位,不想使用定位小蓝点的场景,设置false以后图面上不再有定位蓝点的概念,但是会持续回调位置信息。 locationStyle.radiusFillColor(resources.getColor(R.color.map_radius_color))
高德地图功能点使用整理相关推荐
- 百度、高德地图功能进一步探索之—电子围栏绘制(三)
开始最前提到对地图覆盖物的使用,到目前为止只剩 Polygon(多边形) Circle(圆形)这两个还没有进一步说明,那么今天我们所要讲解的电子围栏功能会用到这两个覆盖物,当然也会用到Marker ...
- Android高德地图功能总结
前言 最近项目用到了高德地图,基于地图的应用需求还是比较广的,所以想记录一下高德地图的用法,文章基于最新版的高德地图SDK,由于是记录使用方法,所以文字比较枯燥,看不下去的可以看源码,文末会附上源码地 ...
- 高德地图ar步行导航使用教程分享
高德地图功能多,最近向用户展示了新功能--ar步行导航.很多小伙伴对这个功能还不太了解.所以换换为大家准备了详细的使用教程共享.一起看看吧! 高德地图ar步行导航使用教程 1.打开高德地图.选择下方& ...
- Android 高德地图Key的配置
高德地图 开发过程中用到高德地图SDK,高德地图请求key的过程中填写SHA1是一个难点,本文主要说明一下如何填写Key的设置. Key 在高德开放平台,我的应用->创建新应用-->添加新 ...
- 各省、地级市-2020春运期间高德地图人口迁徙数据-excel、shp格式
一. 数据价值 人口流动是指人口在特定空间范围内迁徙和移动,其作为生产要素在空间上进行配置的一种活动,在一定程度上推动了社会.经济要素的重新集聚与扩散.人口流动体现了区域经济活动在空间上的变化,城市间 ...
- android高德地图获取海拔_在vue中使用高德地图开发,以及AMap的引入?
百度引入BMap ,一个import 即可,可AMap 却报AMap is not difined ? 1.首先在 externals: { "BMap": "BMap& ...
- Uniapp中使用高德地图,并在android studio中离线打包
Uniapp中使用高德地图,并在android studio中离线打包 带高德地图功能的Uniapp的android离线打包 1. Uniapp中使用高德地图的方式 2. 高德地图中申请key 3. ...
- Hbuilder 历次版本更新记录
HBuilder - Release Notes 7.6.0.201611071800 IDE [重要]Mac版HBuilder支持iOS10真机运行,解决32位Windows系统下iOS真机运行无法 ...
- 仿去哪网酒店的地图:POI、定位、国际地图、导航、marker及其自定义infowindow
Android 博客之路第二弹:关于最近研究地图的总结. 前言:最近App开发酒店信息需要用到地图模块,所以就目前需要的功能研究了一下.虽然以前也有用到,但以前仅限于marker及infowindow ...
最新文章
- html里面的crossorigin属性,HTML5 标签里的 crossorigin 属性到底有什么用? | Chrisyue's Blog...
- .从三层架构到MVC,MVP
- Spring Cloud学习笔记-010
- [云炬创业基础笔记] 第四章测试17
- html5响应式设置meta
- 当html里语义化,HTML5语义化
- java用swing日历标记节日_如何用JavaSwing作一个日历控制程序?
- 网络基础知识(黑马教程笔记)-6-静态资源访问的功能实现
- 修改表和约束(alter语句)
- 【c语言】背包问题的贪心法
- 图像匹配 一些基本算法
- 线性布局和表格布局的嵌套使用
- LeetCode热题100使用摩尔投票法的题目整理(待更)
- 营收1亿美金的美国软件公司_我如何在60天内损失1亿美元
- MFC—界面设计(控件自适应,添加背景图,Static背景颜色设置)
- MTP和MPO两种光纤有什么区别呢?
- Win11下载速度太慢如何解决?Win11提高下载速度的方法
- Ubuntu桌面右键不管用解决办法
- R数据挖掘 第四篇:OLS回归分析
- 百度CEO李彦宏为何这么拼