gpt4 book ai didi

android - osmdroid marker android中的自定义图标

转载 作者:行者123 更新时间:2023-12-04 14:15:58 26 4
gpt4 key购买 nike

我在路线上有几个站点,我想用自定义图标显示它们。
使用默认 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 安卓 9 (API 28) .
我已经尝试设置 android:hardwareAccelerated="false"正如 OSMDroid - Default marker moving when zooming out on Android API 28 中所说或 setAnchor(ANCHOR_CENTER,ANCHOR_CENTER)但它不起作用。
还有其他解决方案吗?

customized icons

最佳答案

这种方法的问题似乎与自定义图标分辨率有关,它解析真实分辨率,但会缩小显示的图像。作为修复/解决方法,您可以将自定义 png 标记移出 drawable文件夹到 mipmap-xxxhdpi例如。
并且不要忘记设置 anchor ,例如:customMarker.setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM);L.E.不要忘记使用高分辨率标记(我用 png 图像测试过)

关于android - osmdroid marker android中的自定义图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60301641/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com