1

Мне нужно установить пользовательский маркер на google maps v2. Я использовалGoogle Maps v2 на Android: маркер слишком мал

.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.marker_custom)) 

, чтобы установить его, и он кажется очень маленьким (около 1/3 пользовательского маркера). marker_custom - это 32-битный цвет 32x37 png-файла.

protected Bitmap adjustImage(Bitmap image) { 
int dpi = image.getDensity(); 
if (dpi == mDpi) 
    return image; 
else { 
    int width = (image.getWidth() * mDpi + dpi/2)/dpi; 
    int height = (image.getHeight() * mDpi + dpi/2)/dpi; 
    Bitmap adjustedImage = Bitmap.createScaledBitmap(image, width, height, true); 
    adjustedImage.setDensity(mDpi); 
    return adjustedImage; 
    } 
} 

Я уже пытался изменить размер растрового изображения в соответствии с плотностью экрана с помощью:

, и я также пытался использовать

.setIcon(BitmapDescriptorFactory.fromBitmap(markerFreeBitmap)) 

, но ничего не изменилось.

Любая идея? Большое спасибо!

+0

как об использовании растяжимой .png на папках Рез. – Aiapaec

ответ

0

Я рекомендую создавать Drawable .png и размещать разные размеры в разных папках drawable-xhdpi, drawable-hdpi и drawable-mdpi.

затем создать маркер, используя

mMap.addMarker(new MarkerOptions() 
.position(new LatLng(lat, lng)) 
.icon(BitmapDescriptorFactory.fromResource(R.drawable.custom_marker_drawable))); 
+0

У меня есть еще один png того же размера в другой активности, который отображается в реальном размере (больше, чем маркер) при одном и том же девиации, поэтому я думаю, что это не проблема – user3179708

Смежные вопросы