放置在地图表面上特定点的图标。标记图标的绘制方向为 是相对于地图表面的也就是说,不一定会改变 定位。
标记具有以下属性:
- 阿尔法系数
- 设置标记的不透明度。默认值为 1.0。
- 锚定广告
- 图片上将置于标记的
LatLng
位置的点。 该角度默认为距图片左侧和底部的 50%。 - 职位
- 地图上标记位置的
LatLng
值。您可以在以下位置更改此值: 可以随时移动标记。 - 标题
- 当用户点按标记时显示在信息窗口内的文本字符串。您可以 更改此值。
- 代码段
- 显示在标题下方的附加文本。您可以随时更改此值。
- 图标
- 为标记显示的位图。如果该图标未设置,则系统会默认使用一个图标
。您可以使用
defaultMarker(float)
指定默认图标的替代颜色。 - 拖动状态
- 如果您想允许用户拖动标记,请将此属性设为
true
。您 可以随时更改此值默认值为false
。 - 可见性
- 默认情况下,标记是可见的。要隐藏标记,请将此属性设为
false
。您可以随时更改此值。 - Flat 或 Billboard
- 如果标记在地图上是平的,则标记将作为相机固定在地图上
进行了旋转和倾斜,但仍与相机缩放时的大小相同,这与
GroundOverlay
不同。如果标记是广告牌,则它始终是面向镜头绘制的, 将随相机旋转或倾斜。默认值为广告牌 (false
) - 旋转
- 标记围绕标记的锚点顺时针旋转的角度(以度为单位)。轴 旋转角度与标记垂直旋转值为 0 对应于默认的 标记的位置。当地图上的标记为 Flat 标记时,默认位置为指向北方 同时旋转,则标记会始终保持平面状态。当 标记是一个广告牌,则默认位置为向上,并且旋转角度是 则标记始终朝向镜头。默认值为 0。
- zIndex
- 标记的绘制顺序。这些标记是按 zIndex 的顺序绘制的,其中 顶部绘制的最高 ZIndex 标记。通过为每个标记设置 zIndex 属性,您可以 控制用户最有可能点击的点按目标默认值为 0。
- 标记
- 与标记关联的
Object
。例如,Object
可以包含 有关标记所表示内容的数据。这比存储单独的Map<Marker, Object>
更简单。再举一例,您可以将String
ID 与数据集中的 ID 相对应。Google Maps SDK for Android 既不会读取 写入此属性。
此类中的方法必须在 Android 界面线程上调用。否则,系统会在运行时抛出 IllegalStateException
。
示例
GoogleMap map = ... // get a map.
// Add a marker at San Francisco.
Marker marker = map.addMarker(new MarkerOptions()
.position(new LatLng(37.7750, 122.4183))
.title("San Francisco")
.snippet("Population: 776733"));
开发者指南
如需了解详情,请参阅标记开发者 指南。
嵌套类摘要
@interface | Marker.CollisionBehavior | 表示当标记与其他标记或底边发生碰撞时,如何处理该标记 地图标签。 |
公共方法摘要
boolean | |
float |
getAlpha()
获取标记的 alpha 值。
|
字符串 |
getId()
获取此标记的 ID。
|
LatLng |
getPosition()
返回标记的位置。
|
float |
getRotation()
获取标记的旋转角度。
|
字符串 |
getSnippet()
获取标记的代码段。
|
对象 |
getTag()
获取标记的标记。
|
字符串 |
getTitle()
获取标记的标题。
|
float |
getZIndex()
返回标记的 ZIndex。
|
int |
hashCode()
|
void |
hideInfoWindow()
如果信息窗口从此标记显示,则用于隐藏该窗口。
|
boolean |
isDraggable()
获取标记的可拖动性。
|
boolean |
isFlat()
获取标记的平面设置。
|
boolean |
isInfoWindowShown()
用于返回信息窗口当前是否显示在该标记上方。
|
boolean |
isVisible()
获取此标记的可见性设置。
|
void |
remove()
从地图中删除此标记。
|
void |
setAlpha(浮动 Alpha)
设置标记的 alpha(不透明度)。
|
void |
setAnchor(float anchorU, float anchorV)
设置标记的定位点。
|
void |
setDraggable(boolean draggable)
设置标记的可拖动性。
|
void |
setFlat(布尔值平面)
设置此标记在地图
true 或面向
摄像头 false 。 |
void | |
void |
setInfoWindowAnchor(浮动锚点 U, 浮动锚点 V)
用于指定标记图像中信息窗口的锚定点。
。
|
void | |
void |
setRotation(浮动旋转)
用于设置标记围绕标记的锚点顺时针旋转的角度(以度为单位)。
|
void |
setSnippet(字符串代码段)
设置标记的代码段。
|
void |
setTag(对象标记)
设置标记的标记。
|
void |
setTitle(字符串标题)
设置标记的标题。
|
void |
setVisible(boolean visible)
设置此标记的可见性。
|
void |
setZIndexsetZIndex(float zIndex)
设置标记的 ZIndex。
|
void |
showInfoWindow()
如果此标记
isVisible() ,则在地图上显示此标记的信息窗口。 |
继承的方法摘要
公共方法
公开 浮点数 getAlpha ()
获取标记的 alpha 值。
返回
- 标记的 alpha 值的范围为 [0, 1]。
公开 字符串 getId ()
获取此标记的 ID。该 ID 在地图上的所有标记中都是唯一的。
返回
- 该标记的 ID。
公开 浮点数 getRotation ()
获取标记的旋转角度。
返回
- 标记相对于默认位置顺时针旋转的角度(以度为单位)。
公开 字符串 getSnippet ()
获取标记的代码段。
返回
- 包含标记代码段的字符串。
公开 对象 getTag ()
获取标记的标记。
返回
- 如果通过
setTag
设置了标记,则为相应标记;如果未设置任何标记,则为null
。
公开 字符串 getTitle ()
获取标记的标题。
返回
- 包含标记标题的字符串。
公开 浮点数 getZIndex ()
返回标记的 ZIndex。
返回
- 该标记的 zIndex 的值。
公开 整数 hashCode ()
公开 无效 hideInfoWindow ()
如果信息窗口从此标记显示,则用于隐藏该窗口。
如果该标记不可见,此方法不会产生任何影响。
公开 布尔值 isDraggable ()
获取标记的可拖动性。如果标记是可拖动的,用户就可以通过 长按标记。
返回
- 如果标记可拖动,则为
true
;否则返回false
。
公开 布尔值 isFlat ()
获取标记的平面设置。
返回
- 如果标记在地图上是平的,则为
true
;false
(如果标记应) 面对镜头。
公开 布尔值 isInfoWindowShown ()
用于返回信息窗口当前是否显示在该标记上方。这不考虑 信息窗口是否在屏幕上确实可见。
公开 布尔值 isVisible ()
获取此标记的可见性设置。请注意,这并不表示标记 在屏幕视口内。它用于指示是否绘制标记,如果 包含在屏幕视口中
返回
- 该标记的可见性。
公开 无效 删除 ()
从地图中删除此标记。某个标记被删除后,其所有 方法。
公开 无效 setAlpha (浮动 Alpha 值)
设置标记的 alpha(不透明度)。这是一个 0 到 1 之间的值,其中 0 表示标记。 表示完全透明,1 表示标记完全不透明。
参数
alpha |
---|
公开 无效 setAnchor (float anchorU, float anchorV)
设置标记的定位点。
锚点指定图标图片中锚定到标记位置的点 探索地球表面
锚点在连续空间 [0.0, 1.0] x [0.0, 1.0] 中指定,其中 (0, 0) 表示图片的左上角,(1,1) 表示右下角。锚定点 W x H 图片中的 (W + 1) x 中最近的离散网格点 (H + 1) 网格,通过缩放然后舍入获得。例如,在一张 4x2 的图片中 锚点 (0.7, 0.6) 将解析为 (3, 1) 处的网格点。
*-----+-----+-----+-----* | | | | | | | | | | +-----+-----+-----+-----+ | | | X | | (U, V) = (0.7, 0.6) | | | | | *-----+-----+-----+-----* *-----+-----+-----+-----* | | | | | | | | | | +-----+-----+-----X-----+ (X, Y) = (3, 1) | | | | | | | | | | *-----+-----+-----+-----*
参数
anchorU | 锚点的 u 坐标,表示为图片宽度的比率(在 [0, 1] 范围内)。 |
---|---|
anchorV | 锚点的 v 坐标,表示为图片高度的比率(范围为 [0, 1])。 |
公开 无效 setDraggable (布尔值可拖动)
设置标记的可拖动性。如果标记是可拖动的,用户就可以通过 长按标记。
参数
可拖动 |
---|
公开 无效 setFlat (布尔值扁平)
设置此标记在地图 true
或面向
摄像头 false
。
参数
持平 |
---|
公开 无效 setInfoWindowAnchor (float anchorU, float anchorV)
用于指定标记图像中信息窗口的锚定点。
。这是在与锚点相同的坐标系中指定的。如需了解详情,请参阅 setAnchor(float, float)
。默认值为图片的上部中间。
参数
anchorU | 信息窗口锚点的 u 坐标,即图像宽度的比率(在 范围 [0, 1])。 |
---|---|
anchorV | 信息窗口锚点的 v 坐标,表示为地图高度(在 范围 [0, 1])。 |
公开 无效 setRotation (浮动轮播)
用于设置标记围绕标记的锚点顺时针旋转的角度(以度为单位)。轴 旋转角度与标记垂直旋转角度为 0 时对应默认位置 标记的位置。
参数
轮播 |
---|
公开 无效 setSnippet (字符串代码段)
设置标记的代码段。
参数
snippet | 如果为 null,则清除代码段。 |
---|
公开 无效 setTag (对象标记)
设置标记的标记。
您可以使用此属性将任意 Object
与此标记关联。对于
例如,Object
可以包含与标记所表示的含义有关的数据。这样更简单
与存储单独的 Map<Marker, Object>
相比。再举一例,您可以将
与数据集中的 ID 对应的 String
ID。Google Maps SDK for Android
读取或写入此属性。您需要负责调用 setTag(null)
来清除
在不再需要时,使用此标记,以防止应用中发生内存泄漏。
参数
标记 | 如果为 null,则清除该代码。 |
---|
公开 无效 setTitle (字符串标题)
设置标记的标题。
参数
标题 | 如果为 null,则清除标题。 |
---|
公开 无效 setVisible (布尔值可见)
设置该标记的可见性。如果设置为 false
且信息窗口当前为
将会隐藏信息窗口。
参数
可见 |
---|
公开 无效 setZIndex (浮动 zIndex)
设置标记的 ZIndex。
参数
zIndex |
---|
公开 无效 showInfoWindow ()
如果此标记 isVisible()
,则在地图上显示此标记的信息窗口。
抛出
IllegalArgumentException | 如果marker 不在此地图上
|
---|