除了标题和摘要外,如何在标记中包含 ID
How to include ID in marker in addition to title and snippet
在地图android工作室添加标记时,我只能输入标题和摘要。
如何添加其他参数如id?
我稍后可以在单击标记时得到它。
private void addMarker(LatLng latlng, final String title, final String deskripsi, final String id) {
markerOptions.position(latlng);
markerOptions.title(title);
markerOptions.snippet(deskripsi);
gMap.addMarker(markerOptions);
gMap.setOnInfoWindowClickListener(new GoogleMap.OnInfoWindowClickListener() {
@Override
public void onInfoWindowClick(Marker marker) {
Toast.makeText(getApplicationContext(), marker.getTitle(), Toast.LENGTH_SHORT).show();
}
});
}
How to add other parameters such as id?
除了marker id,你还想设置哪些字段?
当我们使用 GoogleMap.addMarker
创建标记时,标记 ID 会自动生成。您可以做的是在创建标记后,使用 HashMap
映射所有标记 ID,并在 getInfoWindow(Marker marker)
或 getInfoContents(Marker marker)
内使用 marker.getId()
继续。
您可以使用#marker.setTag
例如:
Marker marker = mMap.addMarker(markerOptions);
marker.setTag([You can give here]); // marker.setTag(30)
稍后您可以使用 getTag
int id = (int) marker.getTag();
要唯一标识您的标记,请使用:
setTag(Object obj)
要检索,请使用:
getTag()
查看此处发布的答案:
使用一个Hashmap来存储marker和id
private HashMap<Marker, Integer> markerIdMapping = new HashMap<>();
private void addMarker(LatLng latlng, final String title, final String deskripsi, final String id) {
markerOptions.position(latlng);
markerOptions.title(title);
markerOptions.snippet(deskripsi);
Marker marker = gMap.addMarker(markerOptions);
markerIdMapping.put(marker, id);
gMap.setOnInfoWindowClickListener(new GoogleMap.OnInfoWindowClickListener() {
@Override
public void onInfoWindowClick(Marker marker) {
Toast.makeText(getApplicationContext(), marker.getTitle(), Toast.LENGTH_SHORT).show();
String markerId = markerIdMapping.get(marker);
}
});
}
在地图android工作室添加标记时,我只能输入标题和摘要。 如何添加其他参数如id? 我稍后可以在单击标记时得到它。
private void addMarker(LatLng latlng, final String title, final String deskripsi, final String id) {
markerOptions.position(latlng);
markerOptions.title(title);
markerOptions.snippet(deskripsi);
gMap.addMarker(markerOptions);
gMap.setOnInfoWindowClickListener(new GoogleMap.OnInfoWindowClickListener() {
@Override
public void onInfoWindowClick(Marker marker) {
Toast.makeText(getApplicationContext(), marker.getTitle(), Toast.LENGTH_SHORT).show();
}
});
}
How to add other parameters such as id?
除了marker id,你还想设置哪些字段?
当我们使用 GoogleMap.addMarker
创建标记时,标记 ID 会自动生成。您可以做的是在创建标记后,使用 HashMap
映射所有标记 ID,并在 getInfoWindow(Marker marker)
或 getInfoContents(Marker marker)
内使用 marker.getId()
继续。
您可以使用#marker.setTag
例如:
Marker marker = mMap.addMarker(markerOptions);
marker.setTag([You can give here]); // marker.setTag(30)
稍后您可以使用 getTag
int id = (int) marker.getTag();
要唯一标识您的标记,请使用:
setTag(Object obj)
要检索,请使用:
getTag()
查看此处发布的答案:
使用一个Hashmap来存储marker和id
private HashMap<Marker, Integer> markerIdMapping = new HashMap<>();
private void addMarker(LatLng latlng, final String title, final String deskripsi, final String id) {
markerOptions.position(latlng);
markerOptions.title(title);
markerOptions.snippet(deskripsi);
Marker marker = gMap.addMarker(markerOptions);
markerIdMapping.put(marker, id);
gMap.setOnInfoWindowClickListener(new GoogleMap.OnInfoWindowClickListener() {
@Override
public void onInfoWindowClick(Marker marker) {
Toast.makeText(getApplicationContext(), marker.getTitle(), Toast.LENGTH_SHORT).show();
String markerId = markerIdMapping.get(marker);
}
});
}