android 百度地图自定义添加覆盖物(Overlay)

2024-04-23 00:48

本文主要是介绍android 百度地图自定义添加覆盖物(Overlay),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

把我们自定义的布局转成Bitmap,方便添加到百度地图上。

/*
**把自定义的布局文件转成Bitmap
*/
private Bitmap changeView2Drawble(String num, String name) {View view = LayoutInflater.from(this).inflate(R.layout.custom_bd_pop, null);//显示数字,如小区人数TextView textView = view.findViewById(R.id.pop_num);//显示文字,如小区名称TextView pop_name = view.findViewById(R.id.pop_name);textView.setText(num);pop_name.setText(name);//文字过长可以做处理view.setDrawingCacheEnabled(true);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();//获取到图片,这样就可以添加到Map上Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache());return bitmap;}

根据经纬度位置,添加我们要的Overlay图层。

/*** @作者 * @时间 * @描述 绘制数据到地图上,Poi类是自己写的实体类*/
private void drawPoiOnMap(Poi poi) {BitmapDescriptor bitmap;Marker marker;OverlayOptions options;bitmap = BitmapDescriptorFactory.fromBitmap(changeView2Drawble(poi.getPortNum(), poi.getPoiName()));//设置markeroptions = new MarkerOptions().position(new LatLng(poi.getLat(), poi.getLng()))//设置位置.icon(bitmap)//设置图标样式.zIndex(9) // 设置marker所在层级.draggable(true); // 设置手势拖拽;//添加markermarker = (Marker) baiduMap.addOverlay(options);Bundle bundle = new Bundle();//marker中添加数据,点击的时候可以获取到做对应的处理。bundle.putString("key", "value");marker.setExtraInfo(bundle);}}

布局文件自己写,我做的简单效果如图中泡泡加文字效果:
在这里插入图片描述

这篇关于android 百度地图自定义添加覆盖物(Overlay)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/927336

相关文章

Android如何获取当前CPU频率和占用率

《Android如何获取当前CPU频率和占用率》最近在优化App的性能,需要获取当前CPU视频频率和占用率,所以本文小编就来和大家总结一下如何在Android中获取当前CPU频率和占用率吧... 最近在优化 App 的性能,需要获取当前 CPU视频频率和占用率,通过查询资料,大致思路如下:目前没有标准的

SpringBoot自定义注解如何解决公共字段填充问题

《SpringBoot自定义注解如何解决公共字段填充问题》本文介绍了在系统开发中,如何使用AOP切面编程实现公共字段自动填充的功能,从而简化代码,通过自定义注解和切面类,可以统一处理创建时间和修改时间... 目录1.1 问题分析1.2 实现思路1.3 代码开发1.3.1 步骤一1.3.2 步骤二1.3.3

dubbo3 filter(过滤器)如何自定义过滤器

《dubbo3filter(过滤器)如何自定义过滤器》dubbo3filter(过滤器)类似于javaweb中的filter和springmvc中的intercaptor,用于在请求发送前或到达前进... 目录dubbo3 filter(过滤器)简介dubbo 过滤器运行时机自定义 filter第一种 @A

Android开发中gradle下载缓慢的问题级解决方法

《Android开发中gradle下载缓慢的问题级解决方法》本文介绍了解决Android开发中Gradle下载缓慢问题的几种方法,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、网络环境优化二、Gradle版本与配置优化三、其他优化措施针对android开发中Gradle下载缓慢的问

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...

Android kotlin语言实现删除文件的解决方案

《Androidkotlin语言实现删除文件的解决方案》:本文主要介绍Androidkotlin语言实现删除文件的解决方案,在项目开发过程中,尤其是需要跨平台协作的项目,那么删除用户指定的文件的... 目录一、前言二、适用环境三、模板内容1.权限申请2.Activity中的模板一、前言在项目开发过程中,尤

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

SpringBoot 自定义消息转换器使用详解

《SpringBoot自定义消息转换器使用详解》本文详细介绍了SpringBoot消息转换器的知识,并通过案例操作演示了如何进行自定义消息转换器的定制开发和使用,感兴趣的朋友一起看看吧... 目录一、前言二、SpringBoot 内容协商介绍2.1 什么是内容协商2.2 内容协商机制深入理解2.2.1 内容