How to draw default text marker google map v2

I want to draw the default text on a Google map v2. I did this by taking my own image from drawable, but how can I change it in the default mark.

my code

marker.icon(BitmapDescriptorFactory .fromBitmap(drawTextToBitmap(getApplicationContext(), R.drawable.images,"5"))); 

and drawTextToBitmap .

 public static Bitmap drawTextToBitmap(Context gContext,int gResId,String gText) { Resources resources = gContext.getResources(); float scale = resources.getDisplayMetrics().density; Bitmap bitmap = BitmapFactory.decodeResource(resources, gResId); android.graphics.Bitmap.Config bitmapConfig = bitmap.getConfig(); if(bitmapConfig == null) { bitmapConfig = android.graphics.Bitmap.Config.ARGB_8888; } bitmap = bitmap.copy(bitmapConfig, true); Canvas canvas = new Canvas(bitmap); Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); paint.setColor(Color.BLACK); paint.setTextSize((int) (15 * scale)); paint.setShadowLayer(1f, 0f, 1f, Color.WHITE); Rect bounds = new Rect(); paint.getTextBounds(gText, 0, gText.length(), bounds); int x = (bitmap.getWidth() - bounds.width())/2; int y = (bitmap.getHeight() + bounds.height())/2; canvas.drawText(gText, x * scale, y * scale, paint); return bitmap; } 

I want to draw such text

enter image description here

+8
android google-maps-android-api-2 google-maps-markers
source share
2 answers

1.Downlaod library from

github.com/googlemaps/android-maps-utils

2.To use this link,

Using android-maps-utils with ADT

  TextIconGenerator tc = new TextIconGenerator(this); Bitmap bmp = tc.makeIcon("hello"); 

Then set the bitmap to the map object

  .icon(BitmapDescriptorFactory.fromBitmap(bmp))); 

snap shot

enter image description here

+7
source share

You can use this example to draw text in a marker, which you must set latlong:

 public Marker showTextOnMarker(final Context context, final GoogleMap map, final LatLng location, final String text, final int padding, final int fontSize) { Marker marker = null; if (context == null || map == null || location == null || text == null || fontSize <= 0) { return marker; } final TextView textView = new TextView(context); textView.setText(text); textView.setTextSize(fontSize); final Paint paintText = textView.getPaint(); final Rect boundsText = new Rect(); paintText.getTextBounds(text, 0, textView.length(), boundsText); paintText.setTextAlign(Align.CENTER); final Bitmap.Config conf = Bitmap.Config.ARGB_8888; final Bitmap bmpText = Bitmap.createBitmap(boundsText.width() + 2 * padding, boundsText.height() + 2 * padding, conf); final Canvas canvasText = new Canvas(bmpText); paintText.setColor(Color.BLACK); canvasText.drawText(text, canvasText.getWidth() / 2, canvasText.getHeight() - padding - boundsText.bottom, paintText); final MarkerOptions markerOptions = new MarkerOptions() .position(location) .icon(BitmapDescriptorFactory.fromBitmap(bmpText)) .anchor(0.5f, 1); marker = map.addMarker(markerOptions); return marker; } 
+4
source share

All Articles