Grigorii Yurkov
10/27/2020, 7:47 PMText(
text = money,
modifier = Modifier
.weight(.3f)
.wrapContentWidth(Alignment.End)
.wrapContentHeight(Alignment.CenterVertically),
fontSize = 12.sp
)
alorma
10/27/2020, 7:48 PMRow
and use verticalAlignement
Grigorii Yurkov
10/27/2020, 7:51 PMSiyamed
10/27/2020, 7:51 PMP.J.
10/27/2020, 8:30 PMSiyamed
10/27/2020, 8:58 PMSiyamed
10/27/2020, 8:58 PMSiyamed
10/27/2020, 8:58 PMP.J.
10/27/2020, 9:04 PMSiyamed
10/27/2020, 9:35 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 10:40 PMSiyamed
10/27/2020, 10:40 PMSiyamed
10/27/2020, 10:40 PMSiyamed
10/27/2020, 10:41 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 10:45 PMSiyamed
10/27/2020, 10:46 PMSiyamed
10/27/2020, 10:46 PMSiyamed
10/27/2020, 10:46 PMSiyamed
10/27/2020, 10:47 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:10 PMText
the first frame to do this correctly. You can do that with FontMetrics
from the Android stdlib, but i don’t know if there’s a “pure” Compose way to do it.Siyamed
10/27/2020, 11:11 PMSiyamed
10/27/2020, 11:11 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:18 PMText
, and writing a custom layout wouldn’t affect that. Unless you mean write a custom text layout somehow? Or are you thinking of just scaling the text composable itself without changing the font size?Zach Klippenstein (he/him) [MOD]
10/27/2020, 11:19 PMSiyamed
10/27/2020, 11:26 PMSiyamed
10/27/2020, 11:26 PMSiyamed
10/27/2020, 11:27 PMSiyamed
10/27/2020, 11:27 PM@Composable fun AutoText(text: String) {
var size: TextUnit by remember { mutableStateOf(100.sp) }
val textLayout: Ref<TextLayoutResult?> = remember { Ref() }
val children = @Composable {
Text(
text,
fontSize = size,
// Don't wrap since we're going to adjust the size to fit on one line.
maxLines = 1,
softwrap = true,
overflow = None,
onTextLayout = {
textLayout.value = it
}
)
}
Layout(
modifier = Modifier,
children = children,
measureBlock = { measurables, constraints ->
val childConstraints = constraints.copy(maxHeight = Constraints.Infinity)
val placeable = measurables.first().measure(childConstraints)
val myHeight = constraints.constrainHeight(textLayout.value.height)
val myWidth = constraints.constrainWidth(textLayout.value.width)
layout(myWidth, myHeight) {
placeable.placeRelative(0, 0)
}
}
}
Siyamed
10/27/2020, 11:27 PMSiyamed
10/27/2020, 11:27 PMSiyamed
10/27/2020, 11:29 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:29 PMclipToBounds
is used? Let me try itSiyamed
10/27/2020, 11:30 PMSiyamed
10/27/2020, 11:30 PMSiyamed
10/27/2020, 11:31 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:37 PMSiyamed
10/27/2020, 11:38 PMSiyamed
10/27/2020, 11:38 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:39 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:51 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:52 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:52 PMSiyamed
10/27/2020, 11:52 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:52 PMSiyamed
10/27/2020, 11:53 PMSiyamed
10/27/2020, 11:53 PMSiyamed
10/27/2020, 11:53 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:53 PMSiyamed
10/27/2020, 11:54 PMSiyamed
10/27/2020, 11:54 PMSiyamed
10/27/2020, 11:54 PMSiyamed
10/27/2020, 11:54 PMSiyamed
10/27/2020, 11:55 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:55 PMSiyamed
10/27/2020, 11:55 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:55 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:55 PMSiyamed
10/27/2020, 11:55 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:55 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:55 PMSiyamed
10/27/2020, 11:56 PMZach Klippenstein (he/him) [MOD]
10/27/2020, 11:57 PMGrigorii Yurkov
10/29/2020, 1:31 PMSiyamed
10/30/2020, 4:29 AMSiyamed
10/30/2020, 4:29 AMSiyamed
10/30/2020, 4:30 AMSiyamed
10/30/2020, 4:31 AMMihai Popa
10/30/2020, 12:06 PMRow
and set verticalAlignment
if all elements should be centered, or apply Modifier.align()
on the elements that need centeringMihai Popa
10/30/2020, 12:06 PMGrigorii Yurkov
10/30/2020, 12:39 PM