Android Google Maps API String inside the Marker I

2019-02-25 14:04发布

问题:

Is there a way I can put a value of a String inside the Marker's icon on Google Maps API 2.0? Like this image

in a simple way. Somewhat like this:

   map.addMarker(new MarkerOptions()
                    .position(POSITION)
                    .title("Your title")
                    .icon(HERE PUT MY VAR STRING)
            );

回答1:

You can use the Google Maps API Utility Library and customize you markers using bubble icons:

IconGenerator iconFactory = new IconGenerator(this);

MarkerOptions markerOptions = new MarkerOptions().
    icon(BitmapDescriptorFactory.fromBitmap(iconFactory.makeIcon("Your text"))).
    position(new LatLng(-33.8696, 151.2094)).
    anchor(iconFactory.getAnchorU(), iconFactory.getAnchorV());


回答2:

You can custom icon with your text:

Bitmap.Config conf = Bitmap.Config.ARGB_8888;
Bitmap bmp = Bitmap.createBitmap(80, 80, conf);
Canvas canvas = new Canvas(bmp);

// paint defines the text color, stroke width and size
Paint color = new Paint();
color.setTextSize(35);
color.setColor(Color.BLACK);

// modify canvas
canvas.drawText(YOUR_STRING, 30, 40, color);

// add marker to Map
mMap.addMarker(new MarkerOptions().position(USER_POSITION)
    .icon(BitmapDescriptorFactory.fromBitmap(bmp)));


回答3:

All other answers didn't work for me , got an example from google that solved the issue:
How to replace marker image with textview in google maps api for android?