android中使用高德地图的marker类,并实现给每个marker实例绑定id
时间: 2023-05-30 21:05:13 浏览: 279
在使用高德地图的Marker类时,可以通过设置Marker的Object属性来实现给每个Marker实例绑定一个id。具体实现如下:
1. 创建Marker对象时,可以通过MarkerOptions的Object方法设置Marker的Object属性,将id值传入:
```java
MarkerOptions markerOption = new MarkerOptions();
markerOption.position(latLng);
markerOption.title(title);
markerOption.snippet(snippet);
markerOption.icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_marker));
// 设置Marker的Object属性,将id值传入
markerOption.object(id);
aMap.addMarker(markerOption);
```
2. 在Marker的点击事件中,可以通过getExtraInfo方法获取Marker的Object属性,即绑定的id值:
```java
aMap.setOnMarkerClickListener(new AMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
// 获取Marker绑定的id值
int id = (int) marker.getObject();
// 处理点击事件
// ...
return true;
}
});
```
通过这种方式,可以方便地实现给每个Marker实例绑定一个id值,并在Marker的点击事件中获取该id值,从而实现对Marker的更多操作。