将地图Infowindow从警报对话更改为简单的地图信息

时间:2012-07-07 04:58:25

标签: android infowindow

我在Android中有一个地图应用程序。

当我点击标记时会有一个警报对话框,但我想将警报对话框转换为这样一个简单的信息窗口:

http://3.bp.blogspot.com/-PrYuYQMcGcc/Ta__3fCcw7I/AAAAAAAAAGU/xCxjK3slU4k/s1600/google_map_marker_tooltip_popup_android.JPG

以下是我用来填充Infowindow

的代码
public class CustomItemizedOverlay extends ItemizedOverlay<OverlayItem> {

    private ArrayList<OverlayItem> mapOverlays = new ArrayList<OverlayItem>();

    private Context context;

    public CustomItemizedOverlay(Drawable defaultMarker) {
          super(boundCenterBottom(defaultMarker));
    }

    public CustomItemizedOverlay(Drawable defaultMarker, Context context) {
          this(defaultMarker);
          this.context = context;
    }

    @Override
    protected OverlayItem createItem(int i) {
        return mapOverlays.get(i);
    }

    @Override
    public int size() {
        return mapOverlays.size();
    }

    @Override
    protected boolean onTap(int index) {
        OverlayItem item = mapOverlays.get(index);
        AlertDialog.Builder dialog = new AlertDialog.Builder(context);
        dialog.setTitle(item.getTitle());
        dialog.setMessage(item.getSnippet());
        dialog.show();
        return true;
    }

    public void addOverlay(OverlayItem overlay) {
        mapOverlays.add(overlay);
        this.populate();
    }

}

1 个答案:

答案 0 :(得分:1)

http://android-codes-examples.blogspot.in/2011/04/google-map-example-in-android-with-info.html 你从哪里得到那个图像?它实际上来自这个链接,它还包含如何做到....但不是onTap。

如果你想要onTap,只需从onTap方法中删除该警告对话框和所有内容,然后添加告诉位置的Toast ......这就是一般做法。