I'm working on application with Google maps so i want to define a custom marker for each custom place, For example (gas station- Hotel- Hospital.. ) ! i have a overlays class with the latitude and longitude of many places and i want just how to give a custom icon!
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
With the new Maps Api Setting the Icon for a Marker is done with the following Code:
MarkerOptions markerOptions = new MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_location));
The icon can not be changed after a Marker was created. To change an icon remove the marker and readd it with a new image.
回答2:
with the APi v2, you can do (markerObject).setIcon(BitmapDescriptor)
to change/set the marker image.
回答3:
OverlayItem.setMarker
seems like the method you're looking for.
Note that there is (or used to be) a gotcha you need to be aware of; you first need to use Drawable.setBounds
to set the visible boundaries of the drawable before it can be rendered properly. Some fiddling might be needed to get it to centre; see this answer.