2011-01-09 45 views
2

在我的網站,http://www.foodtrucksmap.com/,則標記大小是由該城市的開放食品的卡車的數量來確定。問題是,當洛杉磯的標記變得太大時,看起來標記的點在海洋或墨西哥。這可以通過簡單地將標記的中心沿着y軸偏移標記高度的一半來解決。我無法弄清楚如何編寫這段代碼!GWT-地圖 - 動態更改標記偏移

另一個(壞)的選擇將是雙倍的圖像的高度,離開按鈕半透明。這種方法的問題是圖像的透明部分是可點擊的!

請大家幫我想想辦法,謝謝!

回答

0

退房使用JavaScript API this例子。

基本上你可以定義你的自定義圖標的定位點的座標作爲標記的中心。而不是使用中間,使用卡車圖標的底部尖端/邊緣。再看「iconAnchor」屬性:

// Create a base icon for all of our markers that specifies the 
// shadow, icon dimensions, etc. 
var baseIcon = new GIcon(G_DEFAULT_ICON); 
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png"; 
baseIcon.iconSize = new GSize(20, 34); 
baseIcon.shadowSize = new GSize(37, 34); 
baseIcon.iconAnchor = new GPoint(9, 34); // THIS IS WHAT YOU CARE ABOUT 
baseIcon.infoWindowAnchor = new GPoint(9, 2); 

在你的情況,你會錨值設置爲一樣的東西:你提到

// Assuming the tip is exactly in the middle at the bottom of the icon 
.iconAnchor = new GPoint(iconWidth/2, 0); 

我沒有使用GWT-地圖 - 但由於它們將總是隻包裝JavaScript API,你應該能夠找到要設置的等效屬性。你能鏈接到你正在使用的gwt-maps實現嗎?