Android 在MapView上的SP中定义图标大小

Android 在MapView上的SP中定义图标大小,android,icons,android-mapview,resolution,marker,Android,Icons,Android Mapview,Resolution,Marker,现在,我使用这部分代码从位图设置标记图标: marker = googleMap.addMarker(...) int height = 100; int width = 100; BitmapDrawable bitmapdraw = (BitmapDrawable) getResources().getDrawable(MyImages.imageIds[item.getId()]); Bitmap b = bitmapdraw.getBitmap(); Bitmap smallMarker

现在,我使用这部分代码从位图设置标记图标:

marker = googleMap.addMarker(...)
int height = 100;
int width = 100;
BitmapDrawable bitmapdraw = (BitmapDrawable) getResources().getDrawable(MyImages.imageIds[item.getId()]);
Bitmap b = bitmapdraw.getBitmap();
Bitmap smallMarker = Bitmap.createScaledBitmap(b, width, height, false);
BitmapDescriptor icon = BitmapDescriptorFactory.fromBitmap(smallMarker);
marker.setIcon(icon);
但是标记图标是以像素为单位定义的,在不同的屏幕上没有相同的大小

我有许多不同的图像可以设置为图标,我不想让它们有不同的大小(以避免应用程序的巨大尺寸)


如何在不同的设备上保持相同的大小?

尝试使用addMarker()函数。这可能会对您有所帮助。

谢谢您,但标记已经添加,我更新了我的问题以使其更可见。请不要为图标提供宽度和高度。最好为标记图标保留不同的图像分辨率(可绘制mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi)。就我而言,它工作得很好。