在我的应用程序中有一张地图,地图上有很多针脚。当用户点击针脚时,触摸的针脚的名称将出现在气球中。我想要的是在页面加载时显示所有气球,而不是在用户触摸引脚时。我编写了ItemizedOverlayWithBubble类,它覆盖了一个名为onSingleTapUpHelper的方法:
@Override protected boolean onSingleTapUpHelper(final int index, final Item item, final MapView mapView) {
showBubbleOnItem(index, mapView, true);
return true;
}
在里面有另一个方法调用showBubbleOnItem(index,mapView,true);
public void showBubbleOnItem(final int index, final MapView mapView, boolean panIntoView) {
ExtendedOverlayItem eItem = (ExtendedOverlayItem)(getItem(index));
mItemWithBubble = eItem;
if (eItem != null){
eItem.showBubble(mBubble, mapView, panIntoView);
//setFocus((Item)eItem);
}
}
我玩了一段时间,看看我是否可以在页面加载时工作,但没有运气。非常感谢任何帮助。
答案 0 :(得分:1)
您的积分可能相互重叠。特别是如果你从11,1和12,2和13,3等小差异的整数创建GeoPoint
,这将覆盖重叠的项目
看看这里 package org.osmdroid.util.GeoPoint 当你使用
GeoPoint(final int aLatitudeE6, final int aLongitudeE6)
您的价值不会乘以1E6(即1.000.000)
因此MapView
GeoPoints(11,1)
和GeoPoints(12,2)