Tôi đang chuyển đổi ứng dụng cũ từ v1 thành v2 và tôi đang gặp sự cố với màu của biểu tượng Marker. Tôi có một biểu tượng màu trắng cơ bản, và nó cần phải được tô màu.Chuyển đổi Bản vẽ thành bitmap để thay đổi màu của Điểm đánh dấu trong API Android của Google Maps v2
Trong v1, tôi đã làm nó theo cách này:
Drawable d = DrawableUtils.resizeImageToDrawable(
MapViewFragment.mapviewActivity,
Configuration.Display.getDrawableFix(i),
Configuration.MapView.getWaypointIconWidth(),
Configuration.MapView.getWaypointIconHeight());
d.setColorFilter(color, Mode.MULTIPLY);
overlay = new MyFplnFixListItimizedOverlay(d);
Kể từ Markers v2 không chấp nhận Drawables cho các biểu tượng của họ, tôi nghĩ về chuyển đổi drawable đến một Bitmap, như thế này:
Drawable d = DrawableUtils.resizeImageToDrawable(
MapViewFragment.mapviewActivity,
Configuration.Display.getDrawableFix(i),
Configuration.MapView.getWaypointIconWidth(),
Configuration.MapView.getWaypointIconHeight());
d.setColorFilter(color, Mode.MULTIPLY);
Bitmap icon = ((BitmapDrawable) d).getBitmap();
Marker marker = MapViewFragment.map.addMarker(new MarkerOptions()
.position(point)
.title(Integer.toString(fplnType))
.visible(true)
.icon(BitmapDescriptorFactory.fromBitmap(icon)));
Nhưng vì lý do nào đó, nó không hoạt động. Các biểu tượng vẫn trắng. Có ai biết tại sao không?
Xin cảm ơn trước.
Cảm ơn bạn đã chia sẻ. Bạn đã phải xử lý OutOfMemoryExceptions? – sealskej