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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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