我已经构建了一个音乐应用程序,现在我正在尝试构建一个更像Shazam或Instagrams的映射功能,如下所示:
最初,我要在几个点上删除一般标记而不实际显示该位置的所有活动。然后在点击该标记时,地图将放大并显示更具体的其他标记,依此类推。
是否有可用的教程可以在Android中实现此效果?
答案 0 :(得分:0)
我刚刚发现Google有一个实用程序库,可以提供标记聚类。可在此处找到文档https://developers.google.com/maps/documentation/android-api/utility/marker-clustering
答案 1 :(得分:0)
您可以使用此功能创建添加自定义标记的方法:
private void drawCustomMarker(LatLng point) {
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(point);
markerOptions.title("SMS");
markerOptions.icon(BitmapDescriptorFactory.fromResource(R.drawable.sms));
mMap.addMarker(markerOptions);
}
您可以将LatLng对象传递到要放置标记的位置。我在地图点击监听器中使用过它:
mMap.setOnMapLongClickListener(new GoogleMap.OnMapLongClickListener() {
@Override
public void onMapLongClick(LatLng newlatLng) {
drawCustomMarker(newlatLng);
}
});
希望它会帮助你......!