Как отобразить MarkerIcon и Title на карте Google как Google Apps?
Когда я нахожу ближайшие рестораны в приложении Google Maps для Android, название ресторана отображается рядом со значком маркера по умолчанию. (См. Google Image).
Но в моем приложении мне нужно делать то же самое, когда я ищу ближайшие рестораны, я могу отображать только значки маркеров. (См. Изображение моего приложения).
Google Image:
Мое изображение приложения:
Частичное решение: Здесь я нашел частичное решение для этого, мы получаем это, рисуя текст, используя холст. Я использовал ниже код ссылки по этим ссылкамВот а такжеВот Но на холсте рисую вырезку моего текста. См. Прикрепленное изображениеTextDrawn Image
Marker myLocMarker = map.addMarker(new MarkerOptions()
.position(myLocation)
.icon(BitmapDescriptorFactory.fromBitmap(writeTextOnDrawable(R.drawable.bluebox, "your text goes here"))));
private Bitmap writeTextOnDrawable(int drawableId, String text) {
Bitmap bm = BitmapFactory.decodeResource(context.getResources(), drawableId)
.copy(Bitmap.Config.ARGB_8888, true);
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.BLACK);
paint.setTextAlign(Paint.Align.CENTER);
paint.setLinearText(true);
paint.setAntiAlias(true);
paint.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
paint.setTextSize(35);
Rect textRect = new Rect();
paint.getTextBounds(text, 0, text.length(), textRect);
Canvas canvas = new Canvas(bm);
//Calculate the positions
// int xPos = (canvas.getWidth() / 2) - 2; //-2 is for regulating the x position offset
//"- ((paint.descent() + paint.ascent()) / 2)" is the distance from the baseline to the center.
// int yPos = (int) ((canvas.getHeight() / 2) - ((paint.descent() + paint.ascent()) / 2)) ;
canvas.drawText(text, canvas.getHeight() + 2, canvas.getHeight() + 2, paint);
return bm;
}