Marker 设置ID并且查找某ID得point
时间: 2023-07-22 22:34:36 浏览: 40
好的,针对您的问题,我可以给出以下回答:
在Marker中,可以通过 `setId()` 方法来设置Marker的ID,例如:
```
Marker marker = mMap.addMarker(new MarkerOptions()
.position(latLng)
.title("Marker Title")
.snippet("Marker Snippet"));
marker.setId(1);
```
在设置了Marker的ID之后,可以通过 `findMarkerById()` 方法来查找某个ID对应的Marker,例如:
```
Marker marker = mMap.findMarkerById(1);
if (marker != null) {
LatLng position = marker.getPosition();
// do something with position
} else {
// ID为1的Marker不存在
}
```
需要注意的是,`findMarkerById()` 方法是在 Google Maps Android API v2 中引入的,如果您使用的是旧版的API,可能无法使用该方法。另外,如果您需要同时管理多个Marker,并且需要更灵活的查询和管理方式,建议使用自定义的数据结构来管理Marker,例如使用HashMap来将Marker的ID与其对应的数据关联起来。
相关问题
百度地图Marker 设置ID并且查找某ID得point
好的,针对您的问题,我可以给出以下回答:
在百度地图的Marker中,可以通过 `id` 属性来设置Marker的ID,例如:
```
MarkerOptions markerOptions = new MarkerOptions()
.position(latLng)
.title("Marker Title")
.icon(bitmapDescriptor);
Overlay marker = mMap.addOverlay(markerOptions);
marker.setId(1);
```
在设置了Marker的ID之后,可以通过 `getMap().getMarker(int id)` 方法来查找某个ID对应的Marker,例如:
```
Marker marker = (Marker) mMap.getMap().getMarker(1);
if (marker != null) {
LatLng position = marker.getPosition();
// do something with position
} else {
// ID为1的Marker不存在
}
```
需要注意的是,`getMap().getMarker(int id)` 方法是在百度地图SDK中引入的,如果您使用的是其他版本的API,可能无法使用该方法。另外,如果您需要同时管理多个Marker,并且需要更灵活的查询和管理方式,建议使用自定义的数据结构来管理Marker,例如使用HashMap来将Marker的ID与其对应的数据关联起来。
百度地图new BMapGL.Marker设置ID并且查找某ID
好的,针对您的问题,我可以给出以下回答:
在百度地图的API中,可以使用 `new BMapGL.Marker()` 方法来创建Marker,并且同样可以通过 `id` 属性来设置Marker的ID,例如:
```
var marker = new BMapGL.Marker(latLng, {title: "Marker Title", icon: icon});
marker.id = 1;
map.addOverlay(marker);
```
在设置了Marker的ID之后,可以通过 `map.getOverlays()` 方法来获取地图上所有的覆盖物,然后遍历这些覆盖物,查找对应ID的Marker,例如:
```
var overlays = map.getOverlays();
for (var i = 0; i < overlays.length; i++) {
if (overlays[i].id == 1) {
var position = overlays[i].getPosition();
// do something with position
break;
}
}
```
需要注意的是,使用 `getOverlays()` 方法获取地图上的所有覆盖物时,返回的覆盖物类型包括Marker、Polyline、Polygon等,需要根据自己的需求进行筛选和处理。另外,如果您需要同时管理多个Marker,并且需要更灵活的查询和管理方式,建议使用自定义的数据结构来管理Marker,例如使用HashMap来将Marker的ID与其对应的数据关联起来。