2012-11-15 93 views
4

在我的应用程序中,我有一个由GoogleMaps“支持”的地图,但有时需要离线使用地图,所以我决定添加对osmdroid的支持。通过对我以前的代码进行一些调整,我设法使其具备GoogleMaps所具备的所有功能。osmdroid MapView IconOverlay - 有没有办法改变图标的​​大小?

现在我的问题。在Google地图MapView的图标看起来像一个如下图:

GoogleMaps icon

但在OSM的MapView的图标非常大,模糊:

OSM icon

我试图减小图像的大小(* .png对象),看看这是否是问题,但图标仍然很大,模糊,我的猜测是osmdroid是由于某种原因缩放th e图标到预定大小,有没有办法改变它?

我已经搜索了几个小时,我还没有找到任何有用的东西,所以我决定在这里尝试我的运气。 谢谢:)

回答

1

一次偶然的机会我的一个朋友通过这个答案跌跌撞撞, Issue 331

的问题在修订解决了,这里就是我所做的:

得到:

然后将它们添加到您的项目,然后扩展/使用这些文件,而不是osmdroid的库文件。有了这个,我设法让图标看起来像在谷歌地图的人(除了阴影,但这不是东西,我真的想)

fixede OSM icon

+0

对不起,你能解释一下如何/在哪里添加那两个文件?我在这个问题中添加图标:http://stackoverflow.com/questions/10533071/osmdroid-add-custom-icons-to-itemizedoverlay – AlvaroSantisteban

+0

将这两个文件添加到您的项目(例如:复制/粘贴到COM .example.app.osm)。 然后,假设你有类MyItemizedOverlay(如你在链接的问题中那样),让这个类扩展你刚添加到你项目中的'ItemizedOverlay'。 如果您已经从库中导入了一个,只需将'import org.osmdroid.views.overlay.ItemizedOverlay;'更改为'import com.example.app.osm.ItemizedOverlay;' –

+0

不,对不起,我应该有说我正在添加像这个问题的答案那样的图标。第二种方法对我来说是正确的,但现在我使用了奖励背包中的ItemizedOverlayWithBubble。 我的专线是: ExtendedOverlayItem overlayItem = new ExtendedOverlayItem(PARAMETERS); Drawable icon = new BitmapDrawable(getResources(),anEntity.tagsList.get(0).icon); icon.setBounds(PARAMETERS); overlayItem.setMarker(icon); – AlvaroSantisteban

相关问题