我正在开发一个与谷歌地图相关的应用程序,我想要为每个自定义地点定义一个自定义标记,例如(加油站-酒店-医院..)! 我有一个叠加层类,其中包含许多地方的纬度和经度,我只想知道如何提供自定义图标!
通过新的地图 API,为标记设置图标的代码如下:
MarkerOptions markerOptions = new MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_location));
在创建标记后,无法更改图标。要更改图标,请删除标记,然后使用新图像重新添加它。
(markerObject).setIcon(BitmapDescriptor)
以更改/设置标记图像。OverlayItem.setMarker
似乎是你正在寻找的方法。
注意,有一个需要注意的 gotcha(或曾经存在); 在正确渲染可绘制对象之前,您需要首先使用Drawable.setBounds
设置其可见边界。可能需要一些调整才能居中; 参见 this answer。