Я делаю проект по созданию Google Maps SDK для Android. Я пытаюсь настроить весь пользовательский интерфейс на карте, я знаю, что это можно сделать со старой библиотекой GoogleMaps, но я не знаю, как это сделать в новой библиотеке Compose. Решение Это жаль, потому что новая библиотека делает все намного проще.@Composable
fun DiscoverContent(
mapState: MapState,
setupClusterManager: (Context, GoogleMap) -> ZoneClusterManager,
calculateZoneViewCenter: () -> LatLngBounds,
onClusterClicked: (ZoneClusterItem) -> Unit
) {
val context = LocalContext.current
val mapProperties = MapProperties(isMyLocationEnabled = mapState.lastKnownLocation != null)
val cameraPositionState = rememberCameraPositionState()
GoogleMap(
modifier = Modifier.fillMaxSize(),
properties = mapProperties,
cameraPositionState = cameraPositionState,
uiSettings = MapUiSettings()
) {
val scope = rememberCoroutineScope()
MapEffect(mapState.clusterItems) { map ->
if (mapState.clusterItems.isNotEmpty()) {
val clusterManager = setupClusterManager(context, map)
map.setOnCameraIdleListener(clusterManager)
map.setOnMarkerClickListener(clusterManager)
clusterManager.setOnClusterClickListener { cluster ->
val clusterItem = cluster.items.firstOrNull()
clusterItem?.let { onClusterClicked(it) }
true
}
map.setOnMapLoadedCallback {
if (mapState.clusterItems.isNotEmpty()) {
scope.launch {
cameraPositionState.animate(
update = CameraUpdateFactory.newLatLngBounds(
calculateZoneViewCenter(),
MAP_PADDING
)
)
}
}
}
}
}
}
< /code>
Здесь я загружаю скриншот о том, как он выглядит прямо сейчас. Как выглядит карта прямо сейчас
Подробнее здесь: https://stackoverflow.com/questions/762 ... rsonalized