这是向谷歌地图添加图层的正确方法吗?

时间:2013-07-01 22:03:22

标签: google-maps google-maps-api-3 canvas

我想将绝对定位的画布层添加到谷歌地图。此图层不应受地图移动的影响 - 它必须只是一个覆盖地图图块并位于地图控件下方的静态画布。这就是为什么我不使用不同的窗格,如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为什么没有这样的利润,我担心谷歌每时每刻都能修复它。

1 个答案:

答案 0 :(得分:2)

控件设计为不重叠。

文档说:

  

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

您已经发现了一种添加自定义“控件”的方法,但它仍然遵循这些定位规则。

您最好尝试制作Custom Overlay而不是自定义控件。