我正在使用带有自定义标记的 android google maps v2。问题是它们在mdpi屏幕上工作正常,而在hdpi或xhdpi屏幕上它们显得太小了。
我的标记来自资产(或来自服务器,通过 HTTP),它们被设计为 160 dpi 位图,因此在解码它们之后我设置它们的密度属性,如下面的简化代码示例所示:
InputStream inputStream = mAssetManager.open(filename); // Asset case
InputStream inputStream = connection.getInputStream(); // HTTP case
Bitmap icon = BitmapFactory.decodeStream(inputStream);
icon.setDensity(160);
当我将它们放在地图上时,我会执行以下操作:
BitmapDescriptor descriptor = BitmapDescriptorFactory.fromBitmap(icon);
Marker marker = mMap.addMarker(new MarkerOptions()
.position(new LatLng(location.getLatitude(), location.getLongitude()))
.anchor(0.5f, 0.5f)
.icon(descriptor));
我预计,与 v1 地图库一样,与屏幕密度相比,该库会根据其密度对它们进行缩放。但这似乎没有发生。这是v2地图库的限制吗?我应该在将图标放在地图上之前明确调整它们的大小吗?