标签: osmdroid

使用osmdroid自定义信息泡沫以覆盖项目

我在我的新Android项目上使用osmdroid(因为我希望能够使用离线地图)但是我在定制分配给覆盖项目的信息气泡的外观方面遇到很多困难.

现在,我正在使用ItemizedOverlayWithFocus叠加来显示我的物品; 看着它的代码,我注意到整个onDrawFinished方法都是在方法中绘制的,所以我尝试创建自己的自定义叠加来覆盖这个方法,但这很难得到结果.我希望得到的是这样的事情:

结果

你们是如何设法在你的项目中获得自定义信息泡沫的?

我找到了几个类来为Google的MapView(比如Jeff Gilfelt的MapView Balloons)实现这样的东西,但是对于osmdroid来说却没有.

android osmdroid android-mapview

7
推荐指数
2
解决办法
9287
查看次数

osmdroid覆盖以当前位置为中心

我正在使用osmdroid,并且已在地图上添加MyLocationNewOverlay以显示当前位置。看起来不错。我想要的是一个按钮,该按钮会将地图中心放在我的当前位置,类似于Google地图。

有内置的方法吗?如果没有,我该如何创建自定义叠加层来做到这一点?

我意识到MyLocationNewOverlay具有启用跟踪位置的功能。我不想这样。我只想要一个按需的中心按钮。

android dictionary openstreetmap osmdroid

7
推荐指数
1
解决办法
870
查看次数

Android OSM机器人 - 设置最大缩放级别

我正在实现app vith使用osmdroid mapView.我们有最多16个缩放级别的地图,但Android允许我们有18个缩放级别.你知道如何设置最大缩放级别16而不是默认值18吗?

谢谢

Hmyzak

android osmdroid android-mapview

6
推荐指数
1
解决办法
4567
查看次数

将叠加添加到osmdroid中的MapView

我正在使用osmdroid编写一个简单的android应用程序,在线工作,直到现在我能够显示地图(在线和离线),我想在地图上添加叠加(标记),我已经搜索了使用的简单示例覆盖在osmdroid中,我尝试了其中一些,但它们没有用,所以我想要任何使用osmdroid添加叠加层或marcker的例子

mapping android overlay osmdroid

6
推荐指数
1
解决办法
2万
查看次数

OSMdroid将自定义图标添加到ItemizedOverlay

我正在使用ItemizedIconOverlay类,我目前正在地图上显示事件以及具有相同默认图标的用户位置.

如何更改每个叠加层的图标集?

是否有类似于google.maps示例的内容:

    drawable = getResources().getDrawable(R.drawable.marker);
    drawable3 = getResources().getDrawable(R.drawable.disruption);
    drawable2 = getResources().getDrawable(R.drawable.marker_me);

    itemizedOverlay = new MyItemizedOverlay(drawable, mapView);
    itemizedOverlay2 = new MyItemizedOverlay(drawable2, mapView);
    itemizedOverlay3 = new MyItemizedOverlay(drawable3, mapView);
Run Code Online (Sandbox Code Playgroud)

我让每个itemizedOverlay都有自己的标记......

如何使用Open Street Maps执行此操作?

mResourceProxy = new DefaultResourceProxyImpl(getApplicationContext());
this.mMyLocationOverlay = new ItemizedIconOverlay<OverlayItem>(mItems, new Glistener(), mResourceProxy);
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助,遗憾的是,这个开源项目无需在线提供支持......

android itemizedoverlay osmdroid

6
推荐指数
1
解决办法
1万
查看次数

Android Mapview的替换使用WMS服务

我正在寻找Android MapView的替代品,因为我需要在地图视图中添加WMS服务,并且使用本机视图效果很差.

我尝试过使用Osmdroid API,但仍然没有成功.这需要将几个java类修改为XYTileSource和BitmapTileSourceBase.而且我不确定我能不能工作,因为我还没有找到有关它的信息.

例如:https://groups.google.com/forum/?fromgroups#!topic/osmdroid/IUcc4Q0DmOE

Android Market中的应用程序可以使其完美地与OruxMaps一起工作,但没有用于开发的API.:(

任何人都知道如何以编程方式在另一个地图视图中使用WMS服务.

android wms android-webview osmdroid android-mapview

6
推荐指数
1
解决办法
1539
查看次数

osmdroid 上的多个平铺层

目前我正在通过 OSMdroid 底图加载一个瓦片数据层

final MapTileProviderBasic tileProvider = 
    new MapTileProviderBasic(getApplicationContext());
final ITileSource tileSource = 
    new XYTileSource("MyCustomTiles", null, 1, 16, 256, ".png",
            "http://a.url.to/custom-tiles/");
tileProvider.setTileSource(tileSource);
final TilesOverlay tilesOverlay = 
    new TilesOverlay(tileProvider, this.getBaseContext());
tilesOverlay.setLoadingBackgroundColor(Color.TRANSPARENT);
osmv.getOverlays().add(tilesOverlay);
Run Code Online (Sandbox Code Playgroud)

是否可以在 BaseMap 上叠加多个数据层,或者一次只能显示一个数据层?我为 GoogleMaps找到了这个示例,但还没有找到一些一次处理 multipe 的示例 OSMdroid 代码tileSources

java android osmdroid

6
推荐指数
1
解决办法
4829
查看次数

Leaflet - 基于两个标记实时绘制道路路径

这是基于两个标记绘制道路路径的应用程序示例 在此处输入图片说明

抱歉,我无法搜索教程来创建此教程,因为我无法确定正确的关键字。

我想要的只是放置两个标记,然后将在这些标记之间创建道路路径。它会随着一个标记的移动而调整。

请提供有关如何实现这一目标的见解。非常感谢示例代码。先感谢您。

javascript openstreetmap osmdroid leaflet

6
推荐指数
1
解决办法
2万
查看次数

OSMDROID android 4.2:Mapquest:截至2016年7月11日,直接磁贴访问已停止

在使用osmdroid时.我得到"截至2016年7月11日,直接瓷砖访问已停止." 我认为我们必须使用API​​KEY来使用这个或新的sdk,但我找不到任何地方如何做到这一点.请帮忙.

我在OSMBonusPack_v5.0上使用OSMDROID 4.2.请看下面的屏幕截图:

在此输入图像描述

android osmdroid mapquest

6
推荐指数
1
解决办法
912
查看次数

osmdroid标记android中的自定义图标

我在路线上有几个站点,我想用自定义图标显示它们。使用默认的 osmdroid 图标时,一切都像魅力一样。但是当我将它们从可绘制图像更改为图像时,标记会显示在路线上方(参见图像)。

            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();
Run Code Online (Sandbox Code Playgroud)

我使用osmbonuspack:6.6.0osmdroid-android:6.1.0Android 9 (API 28)我已经尝试按照OSMDroid - 在 Android API 28 上缩小时默认标记移动android:hardwareAccelerated="false"中所述进行设置 ,但它不起作用。还有其他解决办法吗?setAnchor(ANCHOR_CENTER,ANCHOR_CENTER)

定制图标

android osmdroid osmbonuspack

6
推荐指数
1
解决办法
4785
查看次数