我正在使用osmdroid编写一个简单的android应用程序,它可以在线和离线工作,直到现在我能够显示map(在线和离线),并且我想在map上添加叠加层(标记),我搜索了simple在osmdroid中使用覆盖的示例,我尝试了其中一些,但它们没有用,所以我想要任何使用osmdroid添加覆盖或标记的示例 最佳答案 查看ItemizedIconOverlay类。如果你搜索的话,互联网上有一些例子,一个例子已经发布在StackOverflow上:AddingOverylaytoOSMDROID
我在我的Android应用程序中包含了OpenStreetMaps。在mapView中,用户应该能够在map完全加载后捕获屏幕。但目前即使mapView仍在加载,用户也可以捕获图像。谁能告诉我如何检测mapView何时完全加载?下面是我加载mapView的代码:publicclassMainActivityextendsActivity{MapViewmapView;MyLocationOverlaymyLocationOverlay=null;ArrayListanotherOverlayItemArray;protectedItemizedOverlayWithBubbleitin
在使用osmdroid时。我收到“截至2016年7月11日,直接磁贴访问已停止”。我想我们必须使用APIKEY来使用这个或新的sdk,但我找不到任何地方如何去做。请帮忙。我正在使用OSMDROID4.2和OSMBonusPack_v5.0。请看下面的屏幕截图: 最佳答案 您正在使用来自MapQuest的tilesource。最简单的解决方案是只使用不同的tilesourceosmv.setTileSource(TileSourceFactory.DEFAULT_TILE_SOURCE);
我需要用许多(~400)个点填充我的叠加层,将它们添加到PathOverlay,然后设置缩放级别,以便用户可以在屏幕上看到整个路径。一个解决方案是保留最大经度、最小经度、最小经度、最小经度,最后根据这4个数字计算(这是我还没有弄清楚的部分,因为我不知道如何是setZoom()中与map上的距离相关的int)计算适当的缩放级别。然后我会使用setCenter()方法。有没有更简单的方法可以使用OSMDroid来做到这一点?如果不是,我应该如何确定正确的缩放级别? 最佳答案 这个问题很老,但没有明确的答案,所以我会发布我的:我每天都使用
我正在使用osmdroidmapView实现App。我们有最多16个缩放级别的map,但Android允许我们有18个缩放级别。您知道如何设置最大缩放级别16而不是默认的18吗?谢谢哈密扎克 最佳答案 更新-我们向主干中的MapView添加了简单的setMin/MaxZoomLevel()方法。它应该包含在3.0.10中。参见https://code.google.com/p/osmdroid/issues/detail?id=418了解更多信息。原答案:创建您自己的TileSource类并使用它。您可以搭载其中一个具体的图bloc
在应用程序中扩展OSMdroidOverlay类时importorg.osmdroid.views.overlay.Overlay;...publicclassMapOverlayAreaextendsOverlayimplementsTextToSpeech.OnInitListener,OnTouchListener{...我收到一个错误:error:nosuitableconstructorfoundforOverlay(noarguments)constructorOverlay.Overlay(Context)isnotapplicable 最佳答
在我的应用程序中,我使用osmdroid来处理map。mapblock被下载并保存在/storage/osmdroid中。该应用程序需要WRITE_EXTERNAL_STORAGE和READ_EXTERNAL_STORAGE权限。如果我拒绝访问存储,则不会显示map。有什么方法可以在不访问手机内存的情况下显示map? 最佳答案 为了解决这个问题,我刚刚在我的应用程序类中添加了下一个代码:@OverridepublicvoidonCreate(){...org.osmdroid.config.IConfigurationProvide
我有一个开发、部署和以前成功的应用程序,它使用Osmdroid从默认的图block提供程序Mapnik加载图blockmMapView.setTileSource(TileSourceFactory.DEFAULT_TILE_SOURCE);或mMapView.setTileSource(TileSourceFactory.MAPNIK);直到最近(也许从今天开始),真实设备(手机和平板电脑)上的磁贴才不再加载。我正在使用osmdroid版本3.0.5。如果我在模拟器上的一个小示例项目中尝试最新的4.0版本,我在尝试下载maptiles时会在logcat中看到“403forbidden
我正在使用osmdroid和从OSM下载的map,最高级别为16。我想知道是否有任何方法可以让osmdroid使用该缩放级别的图block,但将其绘制得更大。问题是该级别上的图block对我来说有足够的细节,但绘制得很小。我见过一些其他应用程序使用相同的图block级别,但不知何故设法将它们画得更大。谢谢 最佳答案 我发现这个问题的最佳解决方案(我今天早些时候遇到过)是更改图block源中的缩放比例(我使用的是我自己的OpenStreetMap版本):finalfloatscale=getBaseContext().getResou
好的。您可能认为这会相对简单,但事实并非如此。我在我的网站上使用Openstreetmaps,因为数据可以免费使用、编辑和更新-我的项目遵循这个原则,除了googlesAPI使用限制/保存数据限制,googlemaps根本不适合我..至少在网络上。鉴于此,我认为我会效仿我的Android应用程序,因此我使用开放街道map数据设置了osmdroid。我可以在我的Activity中有一个漂亮的map。我还遵循了一个教程,它似乎至少可以工作,这样我就可以在tabhost/viewpager的fragment中有一个mapView。然而,我真正想要的(对于平板电脑)是左侧fragment中的机