标记

公共最终类 标记 扩展对象

放置在地图表面上特定点的图标。标记图标的绘制方向为 是相对于地图表面的也就是说,不一定会改变 定位。

标记具有以下属性:

阿尔法系数
设置标记的不透明度。默认值为 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
equals(其他对象)
测试此 Marker 是否等于另一个值。
float
getAlpha()
获取标记的 alpha 值。
字符串
getId()
获取此标记的 ID。
LatLng
getPosition()
返回标记的位置。
float
getRotation()
获取标记的旋转角度。
字符串
getSnippet()
获取标记的代码段。
对象
getTag()
获取标记的标记。
字符串
getTitle()
获取标记的标题。
float
getZIndex()
返回标记的 ZIndex。
int
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
setIcon(BitmapDescriptor 图标描述符)BitmapDescriptor
用于设置标记的图标。
void
setInfoWindowAnchor(浮动锚点 U, 浮动锚点 V)
用于指定标记图像中信息窗口的锚定点。 。
void
setPosition(LatLngLatLng latlng)
设置标记的位置。
void
setRotation(浮动旋转)
用于设置标记围绕标记的锚点顺时针旋转的角度(以度为单位)。
void
setSnippet(字符串代码段)
设置标记的代码段。
void
setTag(对象标记)
设置标记的标记。
void
setTitle(字符串标题)
设置标记的标题。
void
setVisible(boolean visible)
设置此标记的可见性。
void
setZIndexsetZIndex(float zIndex)
设置标记的 ZIndex。
void
showInfoWindow()
如果此标记 isVisible(),则在地图上显示此标记的信息窗口。

继承的方法摘要

公共方法

<ph type="x-smartling-placeholder"></ph> 公开 布尔值 等于 (其他对象)

测试此 Marker 是否等于另一个值。

参数
其他 Object
返回
  • 如果两个对象是同一对象(即 == other),则为 true。

<ph type="x-smartling-placeholder"></ph> 公开 浮点数 getAlpha ()

获取标记的 alpha 值。

返回
  • 标记的 alpha 值的范围为 [0, 1]。

<ph type="x-smartling-placeholder"></ph> 公开 字符串 getId ()

获取此标记的 ID。该 ID 在地图上的所有标记中都是唯一的。

返回
  • 该标记的 ID。

<ph type="x-smartling-placeholder"></ph> 公开 LatLng getPosition ()

返回标记的位置。

返回
  • 用于指定标记当前位置的 LatLng 对象。

<ph type="x-smartling-placeholder"></ph> 公开 浮点数 getRotation ()

获取标记的旋转角度。

返回
  • 标记相对于默认位置顺时针旋转的角度(以度为单位)。

<ph type="x-smartling-placeholder"></ph> 公开 字符串 getSnippet ()

获取标记的代码段。

返回
  • 包含标记代码段的字符串。

<ph type="x-smartling-placeholder"></ph> 公开 对象 getTag ()

获取标记的标记。

返回
  • 如果通过 setTag 设置了标记,则为相应标记;如果未设置任何标记,则为 null

<ph type="x-smartling-placeholder"></ph> 公开 字符串 getTitle ()

获取标记的标题。

返回
  • 包含标记标题的字符串。

<ph type="x-smartling-placeholder"></ph> 公开 浮点数 getZIndex ()

返回标记的 ZIndex。

返回
  • 该标记的 zIndex 的值。

<ph type="x-smartling-placeholder"></ph> 公开 整数 hashCode ()

<ph type="x-smartling-placeholder"></ph> 公开 无效 hideInfoWindow ()

如果信息窗口从此标记显示,则用于隐藏该窗口。

如果该标记不可见,此方法不会产生任何影响。

<ph type="x-smartling-placeholder"></ph> 公开 布尔值 isDraggable ()

获取标记的可拖动性。如果标记是可拖动的,用户就可以通过 长按标记。

返回
  • 如果标记可拖动,则为 true;否则返回 false

<ph type="x-smartling-placeholder"></ph> 公开 布尔值 isFlat ()

获取标记的平面设置。

返回
  • 如果标记在地图上是平的,则为 truefalse(如果标记应) 面对镜头。

<ph type="x-smartling-placeholder"></ph> 公开 布尔值 isInfoWindowShown ()

用于返回信息窗口当前是否显示在该标记上方。这不考虑 信息窗口是否在屏幕上确实可见。

<ph type="x-smartling-placeholder"></ph> 公开 布尔值 isVisible ()

获取此标记的可见性设置。请注意,这并不表示标记 在屏幕视口内。它用于指示是否绘制标记,如果 包含在屏幕视口中

返回
  • 该标记的可见性。

<ph type="x-smartling-placeholder"></ph> 公开 无效 删除 ()

从地图中删除此标记。某个标记被删除后,其所有 方法。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setAlpha (浮动 Alpha 值)

设置标记的 alpha(不透明度)。这是一个 0 到 1 之间的值,其中 0 表示标记。 表示完全透明,1 表示标记完全不透明。

参数
alpha

<ph type="x-smartling-placeholder"></ph> 公开 无效 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])。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setDraggable (布尔值可拖动)

设置标记的可拖动性。如果标记是可拖动的,用户就可以通过 长按标记。

参数
可拖动

<ph type="x-smartling-placeholder"></ph> 公开 无效 setFlat (布尔值扁平)

设置此标记在地图 true 或面向 摄像头 false

参数
持平

<ph type="x-smartling-placeholder"></ph> 公开 无效 setIcon (BitmapDescriptor iconDescriptor)

用于设置标记的图标。

参数
iconDescriptor 如果为 null,则系统会使用默认标记。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setInfoWindowAnchor (float anchorU, float anchorV)

用于指定标记图像中信息窗口的锚定点。 。这是在与锚点相同的坐标系中指定的。如需了解详情,请参阅 setAnchor(float, float)。默认值为图片的上部中间。

参数
anchorU 信息窗口锚点的 u 坐标,即图像宽度的比率(在 范围 [0, 1])。
anchorV 信息窗口锚点的 v 坐标,表示为地图高度(在 范围 [0, 1])。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setPosition (LatLng latlng)

设置标记的位置。

参数
经纬度

<ph type="x-smartling-placeholder"></ph> 公开 无效 setRotation (浮动轮播)

用于设置标记围绕标记的锚点顺时针旋转的角度(以度为单位)。轴 旋转角度与标记垂直旋转角度为 0 时对应默认位置 标记的位置。

参数
轮播

<ph type="x-smartling-placeholder"></ph> 公开 无效 setSnippet (字符串代码段)

设置标记的代码段。

参数
snippet 如果为 null,则清除代码段。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setTag (对象标记)

设置标记的标记。

您可以使用此属性将任意 Object 与此标记关联。对于 例如,Object 可以包含与标记所表示的含义有关的数据。这样更简单 与存储单独的 Map<Marker, Object> 相比。再举一例,您可以将 与数据集中的 ID 对应的 String ID。Google Maps SDK for Android 读取或写入此属性。您需要负责调用 setTag(null) 来清除 在不再需要时,使用此标记,以防止应用中发生内存泄漏。

参数
标记 如果为 null,则清除该代码。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setTitle (字符串标题)

设置标记的标题。

参数
标题 如果为 null,则清除标题。

<ph type="x-smartling-placeholder"></ph> 公开 无效 setVisible (布尔值可见)

设置此标记的可见性。如果设置为 false 且信息窗口当前为 将会隐藏信息窗口。

参数
可见

<ph type="x-smartling-placeholder"></ph> 公开 无效 setZIndex (浮动 zIndex)

设置标记的 ZIndex。

参数
zIndex

<ph type="x-smartling-placeholder"></ph> 公开 无效 showInfoWindow ()

如果此标记 isVisible(),则在地图上显示此标记的信息窗口。

抛出
IllegalArgumentException 如果marker不在此地图上