нема
Вот чёт гпт сказал Чтобы добавить маркер с картинкой и нарисовать круг сзади в Google Maps на Jetpack Compose, следуйте этим шагам: 1. Создайте Bitmap с нужной картинкой. 2. Нарисуйте круг на Canvas и добавьте вашу картинку поверх круга. 3. Преобразуйте полученное изображение в BitmapDescriptor. 4. Используйте этот BitmapDescriptor в параметре icon у Marker. Вам потребуется использовать Canvas API для рисования и комбинирования картинки с кругом.
я пробовал — краш
Ты пытаешься преобразовать битмап который нельзя преобразовать
а как такое сделать?
Хз, за код не ручаюсь Да, в Jetpack Compose можно использовать Canvas для создания настраиваемого изображения маркера. Вот пример того, как это можно сделать: 1. Создайте компонент с кастомным маркером: @Composable fun CustomMarkerIcon(@DrawableRes imageResource: Int, backgroundColor: Color, size: Dp) { Canvas(modifier = Modifier.size(size)) { val image = ImageBitmap.imageResource(id = imageResource) drawCircle(color = backgroundColor, radius = size.toPx() / 2) drawImage(image, dstSize = IntSize(size.toPx().toInt(), size.toPx().toInt())) } } 2. Используйте этот компонент для создания Bitmap: @Composable fun CreateMarkerBitmap(@DrawableRes imageResource: Int): Bitmap? { var bitmap: Bitmap? by remember { mutableStateOf(null) } val context = LocalContext.current CustomMarkerIcon(imageResource = imageResource, backgroundColor = Color.White, size = 50.dp) LaunchedEffect(Unit) { val imageBitmap = ImageBitmap.imageResource(context.resources, imageResource) val canvas = Canvas(imageBitmap.asAndroidBitmap()) bitmap = canvas.image.asAndroidBitmap() } return bitmap } 3. Преобразуйте Bitmap в BitmapDescriptor и используйте в Marker: val customIcon = CreateMarkerBitmap(R.drawable.your_image) customIcon?.let { val markerOptions = MarkerOptions() .position(LatLng(lat, lng)) .icon(BitmapDescriptorFactory.fromBitmap(it)) map.addMarker(markerOptions) } Этот код позволит вам создать маркер с настраиваемым изображением с помощью Canvas в Jetpack Compose.
Обсуждают сегодня