我想把我的ItemizedOverlayWithBubble by OSMdroid放在标记的顶部,因为现在它在标记上,当它显示时,我的标记隐藏在气泡后面,因为它是同一个GeoPoint。正确的方法是什么?
final ArrayList<ExtendedOverlayItem> items = new ArrayList<ExtendedOverlayItem>();
ExtendedOverlayItem a = new ExtendedOverlayItem("Hannover", "SampleDescription", new GeoPoint(42.34105549, -3.69639444), this);
items.add(0, a);
ItemizedOverlayWithBubble<ExtendedOverlayItem> mMyLocationOverlay =
new ItemizedOverlayWithBubble<ExtendedOverlayItem>
(this, items, mapView);
mapView.getOverlays().add(mMyLocationOverlay);
非常感谢
a.setMarkerHotspot(OverlayItem.HotspotPlace.TOP_CENTER);
如果有人想知道解决方案,这就是解决方案
如果图标设计包含BOTTOM_CENTER热点,则您的解决方案无法正常工作。
使用默认图标时,ExtendedOverlayItem上的气泡定位存在已知问题。
2种解决方案:
1) 为您的项目设置图标:a.setIcon(getResources().getDrawable(R.drawable.my_own_marker));
2) 转到OSMBonusPack的最新版本v4.2.7,用Marker API替换ItemizedOverlayWithBubble/ExtendedOverlayItem,更简单,类似于Google Maps V2。同时也解决了这个已知的问题。