非常简单的请求,但似乎没有办法做到这一点。我只想让我的GMarkers变成绿色而不是红色。
我真的必须制作自己的图标吗?
答案 0 :(得分:4)
这是最简单的方法:
var greenIcon = new GIcon(G_DEFAULT_ICON);
greenIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
var markerOptions = { icon:greenIcon };
var marker = new GMarker(point, markerOptions);
该标记图片是Google的图片,但您也可以使用自己的图片。
如果您需要动态生成唯一标记,MapIconMaker非常棒。
答案 1 :(得分:1)
我找到的最好方法是使用以下脚本...
然后您需要以下代码段:
var iconOptions = {};
iconOptions.width = 32;
iconOptions.height = 32;
iconOptions.primaryColor = "#66CC6600";
iconOptions.cornerColor = "#66CC6600";
iconOptions.strokeColor = "#000000FF";
var iconSeller = MapIconMaker.createMarkerIcon(iconOptions);
function createMarker(icon, point,html,label)
{
opts =
{
"icon": icon,
"labelText": label,
"labelClass": "markerLabel",
"labelOffset": new GSize(-4, -31)
};
var marker = new LabeledMarker(point, opts);
GEvent.addListener(marker, "click",
function()
{
marker.openInfoWindowHtml(html);
});
return marker;
}
确保样式表中有一个名为markerLabel
的类,以便设置包含标签的div的样式。我从优秀的econym教程站点中捏了大部分代码,其中有许多清晰的示例和代码示例。
答案 2 :(得分:0)
请参阅:Map Overlays > Markers > Icons
<强>图标强>
标记可以定义要显示的图标 默认图标的位置。定义一个 由于数字,图标很复杂 构成一个不同的图像 Maps API中的单个图标。在一个 最小,一个图标必须定义 前景图像,类型的大小
GSize
,以及偏移到的图标 定位图标。最简单的图标基于
G_DEFAULT_ICON
类型。创建一个 基于此类型的图标允许您 快速更改默认图标 只修改一些属性。
看起来这是最简单的情况。您使用G_DEFAULT_ICON
作为基础GIcon
,然后通过更改该新对象的.image
属性来扩展它。 simple example非常简单。
答案 3 :(得分:0)
我需要在地图中添加gmarker并从Web服务中获取数据的项目