以下是我的实施情况,当我点击它时,我无法看到我的标记上的任何描述。我甚至经历了很多来源但却找不到合适的来源。寻找积极的出路。
public Marker addMarker(GeoPoint p) {
Marker marker = new Marker(osm);
marker = new Marker(osm);
marker.setPosition(p);
osm.getOverlays().add(marker);
marker.setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM);
marker.setIcon(getResources().getDrawable(R.drawable.black));
marker.setTitle("Marker");
marker.setSnippet("Snippet marker");
marker.setSubDescription("SubDescription marker");
return marker;
}
答案 0 :(得分:1)
您的代码是正确的,应该可以使用。您应该使用最新版本的openstreetmap库并相应地修改代码。 Latest version目前为5.6.5。
快速制作的示例是给出这个结果(点击后):
我不得不评论这一行:
marker.setIcon(getResources().getDrawable(R.drawable.black));
因为我没有画画。
您在osmbonuspack中使用的类已不再存在,因为它们已移至osmdroid库。您必须更改导入(例如,更改为org.osmdroid.views.overlay.Marker等)。您可以完全删除osmbonuspack依赖项,因为您提供的代码不需要它。
您必须更改磁贴源的构造:
osm.setTileSource(TileSourceFactory.MAPNIK);
(但请注意,openstreetmap图块有a usage policy。)
最后注意事项:标记的常见问题是当您设置自定义onMarkerClickListener时,默认实现未被调用。您需要通过调用marker.showInfoWindow()从侦听器打开标记窗口。但这不是你的问题。