【发布时间】:2020-02-19 13:36:41
【问题描述】:
我在路线上有几个站点,我想用自定义图标显示它们。 使用默认 osmdroid 图标时,一切都像魅力一样。 但是当我将它们从drawable更改为图像时,标记会显示在路线上方(见图)。
Marker marker = new Marker(mapView);
marker.setPosition(new GeoPoint(info.getLat(), info.getLon()));
marker.setAnchor(ANCHOR_CENTER, ANCHOR_BOTTOM);
marker.setTitle(info.getName());
Drawable d = ResourcesCompat.getDrawable(getResources(), R.drawable.bus, null);
Bitmap bitmap = ((BitmapDrawable) d).getBitmap();
Drawable dr = new BitmapDrawable(getResources(), Bitmap.createScaledBitmap(bitmap, (int) (48.0f * getResources().getDisplayMetrics().density), (int) (48.0f * getResources().getDisplayMetrics().density), true));
marker.setIcon(dr);
mapView.getOverlays().add(marker);
mapView.invalidate();
我正在使用 osmbonuspack:6.6.0 和 osmdroid-android:6.1.0 和 Android 9 (API 28)。
我已经尝试按照OSMDroid - Default marker moving when zooming out on Android API 28 或setAnchor(ANCHOR_CENTER,ANCHOR_CENTER) 中的说明设置android:hardwareAccelerated="false",但它不起作用。
有没有其他解决办法?
【问题讨论】:
标签: android osmdroid osmbonuspack