1

我想将绝对定位的画布层添加到谷歌地图。该图层不应受到地图移动的影响 - 它必须只是覆盖地图图块并位于地图控件下方的静态画布。这就是为什么我不使用不同的窗格,如 floatPane、tilePane 等。

而不是这个,我直接将画布添加到 mapControls。它有效 - 这是一个例子:http: //jsfiddle.net/wcfPG/。但这是添加图层的正确方法吗?

这就是为什么我对如此公平的细节感到困扰的原因:如果我们更改 jsfiddle 中的 #18 行,

map.controls[google.maps.ControlPosition.TOP_CENTER].push(canvas); 

对此:

map.controls[google.maps.ControlPosition.TOP_LEFT].push(canvas); 

或者这个:

map.controls[google.maps.ControlPosition.TOP_LEFT].push(canvas); 

从左侧或右侧出现边距。我不知道为什么,这似乎是对谷歌地图徽标始终可见的保护。我不知道为什么 TOP_CENTER 没有这样的利润,我担心谷歌可以随时修复它。

4

1 回答 1

2

控件设计为不重叠。

文档说:

控件相对于同一布局位置中的其他控件进行定位。首先添加的控件位于靠近地图边缘的位置。

您已经找到了一种添加您自己的自定义“控件”的方法,但它仍然受制于这些定位规则。

尝试制作自定义叠加层而不是自定义控件可能会更好。

于 2013-07-01T22:36:13.983 回答