I'm trying to port my app to the brand new Google Maps API v2, but can't find how to change the size of the marker (some of my markers are smaller than default).
In v1, I used a Drawable
which I scaled with setBounds()
before adding it to the map.
But now, in v2, I can't use a Drawable
. I've to use MarkerOptions().icon()
, which takes just a BitmapDescriptor
(generated with a BitmapDescriptorFactory
).
Looking at the reference, there doesn't seem to be any support for setting or changing the BitmapDescriptor
size.
So, have I missed something, or is it just plain impossible to set the size for custom markers in this API version?
url: 'http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=ccTLD|800000' , // This marker is 20 pixels wide by 32 pixels tall. size: new google.
For adding a custom marker to Google Maps navigate to the app > res > drawable > Right-Click on it > New > Vector Assets and select the icon which we have to show on your Map. You can change the color according to our requirements. After creating this icon now we will move towards adding this marker to our Map.
You can first convert it into Bitmap and change its size and then use that bitmap in as a custom marker. For example I first created a method which accepts name of your image file in drawable folder, and width and height of marker you want to set.
public Bitmap resizeMapIcons(String iconName,int width, int height){ Bitmap imageBitmap = BitmapFactory.decodeResource(getResources(),getResources().getIdentifier(iconName, "drawable", getPackageName())); Bitmap resizedBitmap = Bitmap.createScaledBitmap(imageBitmap, width, height, false); return resizedBitmap; }
Then call like this in setUpMap() method to create a new marker of required size.
googleMap.addMarker(new MarkerOptions() .title("New Marker") .snippet("Check out this place.") .position(chelsea).icon(BitmapDescriptorFactory.fromBitmap(resizeMapIcons("image_name",100,100))));
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With