Jetpack Compose: как избежать исчезновения текста кнопки, когда размер кнопки маленький?
Я пытаюсь создать небольшую пользовательскую кнопку, которая может отображать числовое значение от 0 до 99 в виде текста. В зависимости от размера шрифта текст исчезает с кнопки, если размер кнопки слишком мал, даже если место еще остается. Как пройти эти ограничения и показать числа внутри кнопки, несмотря на небольшой размер?
Это мой текущий код:
Button(
onClick = { /*TODO*/ },
shape = CircleShape,
modifier = Modifier
.size(20.dp)
) {
Text(
text = "23",
fontSize = 7.sp,
)
}
При этом размере кнопки текст исчезает.
1 ответ
Решение
В имеет значение по умолчанию
contentPadding
который применяется внутри между контейнером и содержимым.
Значения по умолчанию (
ButtonDefaults.ContentPadding
) являются:
private val ButtonHorizontalPadding = 16.dp
private val ButtonVerticalPadding = 8.dp
Вы можете переопределить это, добавив что-то вроде
contentPadding = PaddingValues(0.dp)
к
Button
:
Button(
onClick = { /*TODO*/ },
shape = CircleShape,
modifier = Modifier
.size(20.dp),
contentPadding = PaddingValues(0.dp)
) {
Text(
text = "23",
fontSize = 7.sp,
)
}