如何默认更改图形管理器选择选项?

问题描述 投票:12回答:2

我使用google.maps.drawing.DrawingManager似乎是:

drawingManager = new google.maps.drawing.DrawingManager({
    drawingMode: google.maps.drawing.OverlayType.MARKER,
    markerOptions: {
        draggable: true,
        optimized: false,
        icon: new google.maps.MarkerImage('uxt/images/ap_gif.gif')
    },
    drawingControlOptions: {
        position: google.maps.ControlPosition.TOP_CENTER,
        drawingModes: [
        google.maps.drawing.OverlayType.MARKER,
        google.maps.drawing.OverlayType.POLYGON
        ]
    },

    polygonOptions: {
        fillColor: '#1E90FF',
        strokeWeight: 0,
        fillOpacity: 0.3,
        editable: true
    },
    map: mapA
});

所以我的工具栏看起来像:“在此处输入图像描述”

如您所见,默认情况下(重新加载页面后),标记已选中,但我需要选择“手形”(“停止绘制”)。“在此处输入图像描述”

我如何配置drawingManager来做到这一点?

谢谢。

javascript google-maps-api-3 drawing
2个回答
25
投票
只需在选项中将drawingMode设置为null

drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: null, ...


0
投票
请检查以下代码。如果它不起作用,请检查此帖子Google Maps API v3: Drawing Manager,这可能会有帮助

var markers = []; var infowindow = new google.maps.InfoWindow(); function initialize() { map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); drawingManager.setMap(map); google.maps.event.addListener(drawingManager, 'overlaycomplete', function(event) { if(event.type == google.maps.drawing.OverlayType.POLYLINE) { alert("polyline complete"); } else if(event.type == google.maps.drawing.OverlayType.MARKER) { var newMarker = event.overlay; newMarker.content = "marker #" + markers.length; google.maps.event.addListener(newMarker, 'click', function() { infowindow.setContent(this.content); infowindow.open(map, this); }); markers.push(newMarker); } }); }

© www.soinside.com 2019 - 2024. All rights reserved.