编辑:
- 这个答案最适合较旧的谷歌地图 API。在谷歌地图 V2 中已经给出了这个东西。
您可以从https://github.com/galex/android-mapviewballoons获取代码
您可以从“BalloonItemizedOverlay.java”的方法中获取选定的气球,如下所示
private void hideOtherBalloons(List<Overlay> overlays) {
for(int i=0; i<overlays.size();i++ ){
if (overlays.get(i) instanceof BalloonItemizedOverlay<?> && overlays.get(i) != this) {
((BalloonItemizedOverlay<?>) overlays.get(i)).hideBalloon();
}else{
BalloonOverlayView.SELECTED_BALLOON = i;
Log.i(i+" : Baloon Open", BalloonOverlayView.SELECTED_BALLOON+"");
}
}
}
要设置数据,您可以使用 BalloonOverlayView.java 文件的 setBalloonData 方法,如下所示:
protected void setBalloonData(Item item, ViewGroup parent) {
if (item.getTitle() != null) {
title.setVisibility(VISIBLE);
title.setText(item.getTitle());
} else {
title.setText("");
title.setVisibility(GONE);
}
if (item.getSnippet() != null) {
snippet.setVisibility(VISIBLE);
snippet.setText(item.getSnippet());
} else {
snippet.setText("");
snippet.setVisibility(GONE);
}
}