Jetpack Создание полукруга с помощью CanvasAndroid

Форум для тех, кто программирует под Android
Anonymous
Jetpack Создание полукруга с помощью Canvas

Сообщение Anonymous »

Я пытаюсь создать полукруглую шкалу скорости в Jetpack Compose. Если вид не квадратный, полукруг не будет выглядеть так, как ожидалось. Если я использую соотношение ширины: высоты 1:2, он будет сплющен. Мне нужен Composable, представляющий половину круга, где у меня нет непригодной для использования нижней половины представления.

Код: Выделить всё

    Box(
modifier = modifier
.background(Color.Red)
) {
Canvas(modifier = Modifier.size(300.dp)) {
drawArc(
color = Color.LightGray,
-180f,
180f,
useCenter = false,
style = Stroke(8.dp.toPx(), cap = StrokeCap.Round)
)
}
Text(
modifier = Modifier.align(alignment = Alignment.Center),
text = "20 Mbps",
color = Color.White,
fontSize = 20.sp
)
}
Изображение

Ожидаемым результатом будет многоразовый полукруг, который можно будет составить с высотой фактического полукруга, чтобы я мог легко расположить против него другой контент. Ожидаемый размер изображения отмечен пунктирной зеленой линией.
Изображение


Подробнее здесь: https://stackoverflow.com/questions/729 ... ing-canvas

Вернуться в «Android»