高德地图如何添加覆盖物(添加自定义布局到地图上)

Android 高德地图上添加覆盖物最简单的是直接添加Marker

AMap aMap =mapView.getMap();

Marker marker = aMap.addMarker(new MarkerOptions()

       .position(latLng)//设置经纬度

        .title("标题)//设置点击后显示的标题

        .snippet("内容")//设置点击后显示的内容

        .icon(BitmapDescriptorFactory.fromBitmap(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_dt4)))); //设置图片(覆盖物)

这样就是一个基本添加marker案例

实现自定义的覆盖物

其实就是设置他的icon,

问:"icon不是设置图片吗?",

答:其实我们传的并不是图片,而是一个bitmap,Android里面View也是可以转成bitmap的,所以我们直接将布局转换成bitmap即可

//找到一个布局

View view =this.getLayoutInflater().inflate(R.layout.layout,null);

//找到这个布局中的控件

TextView mapiocation_tv = view.findViewById(R.id.tv);

//给这控件设置一个值

mapiocation_tv.setText("这是一个自定义覆盖物");

AMap aMap =mapView.getMap();

//添加一个marker

Marker marker = aMap.addMarker(new MarkerOptions()

       .position(latLng)//设置经纬度

        .title("标题")//设置标题

        .snippet("内容")//设置内容

      //重点

        .icon(BitmapDescriptorFactory.fromView(view)));//设置布局

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容