过去两天我一直在玩谷歌地图,并开始了解它的功能。
我正在使用大地图,即700 X 300
分辨率地图大小,我正在尝试实现小地图中使用的控件。
例如。
var map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(37.4419, -122.1419), 18);
map.setMapType(G_HYBRID_MAP);
**map.setUIToDefault();**
map.enableContinuousZoom();
var customUI = map.getDefaultUI();
customUI.controls.smallzoomcontrol3d=true; //1. trying to override largezoomcontrol3d
customUI.controls.menumaptypecontrol=true; //2. trying to override largezoomcontrol3d
map.setUI(customUI);
map.enableRotation(); //3. Enabling rotation
这里是1(a)。在我删除行map.setUIToDefault()
并再添加一行customUI.controls.largezoomcontrol3d=false
之前,小缩放控件不可见。虽然我期望通过编写上面的代码,这些控件将被覆盖。
1(b)中。我试图使用map.removeControl(Control:GControl)
我无法传递正确的参数。我想从地图中删除largezoomcontrol3d
,但我无法弄清楚如何在当前地图中引用此控件。
这里也出现了同样的问题。这里唯一的区别是这两个控件都显示在menumaptypecontrol
和maptypecontrol
,此处menumaptypecontrol
重叠在maptypecontrol
我正在尝试在地图上启用轮播,但它对我不起作用。
答案 0 :(得分:1)
考虑map.removeControl你非常接近解决方案(如果我得到了你需要的东西)。看看这里:
所以,你需要使用map.addControl函数来准确添加你需要的东西,而不是你所做的。
抱歉,忘记了地图轮换。我认为以下简单的谷歌地图示例可以帮助你(我从来没有玩过轮换,但是从中学到的例子看起来很简单):