Wie kann man das Symbol zentral an die erste Zeile einer Textkomponente in Compose ausrichten?
Posted: 10 May 2025, 19:29
Ich habe bereits den größten Teil der folgenden Komponente gebaut, aber ich stecke in einem Detail fest. Das Detail ist, dass der gesamte Inhalt vertikal zentriert sein sollte und zusätzlich die Symbol -Komponente zentral an die erste Zeile des Textkomponenten ausgerichtet sein sollte. (Unten ist die gewünschte Ausgabe von der gewünschten Ausgabe zu sehen.@Composable
private fun MyBaseComponent(
@DrawableRes iconResId: Int? = null,
title: String? = null,
subtitle: String,
backgroundColor: Color,
itemColor: Color
) {
Box(
modifier = Modifier
.heightIn(min = 48.dp)
.fillMaxWidth()
.background(color = backgroundColor, shape = RoundedCornerShape(2.dp))
) {
Row(
modifier = Modifier.padding(MyTheme.spacing.double),
verticalAlignment = Alignment.CenterVertically
) {
iconResId?.let {
MyIcon(iconResId = iconResId, tint = itemColor)
Spacer(modifier = Modifier.padding(end = MyTheme.spacing.double))
}
Column(verticalArrangement = Arrangement.spacedBy(MyTheme.spacing.small)) {
title?.let { MyTitle(text = title, color = itemColor) }
MySubtitle(text = subtitle, color = itemColor)
}
}
}
}
< /code>
Wie es im Moment aussieht. Alles scheint in Ordnung zu sein, aber außer der Symbolpositionierung.>
private fun MyBaseComponent(
@DrawableRes iconResId: Int? = null,
title: String? = null,
subtitle: String,
backgroundColor: Color,
itemColor: Color
) {
Box(
modifier = Modifier
.heightIn(min = 48.dp)
.fillMaxWidth()
.background(color = backgroundColor, shape = RoundedCornerShape(2.dp))
) {
Row(
modifier = Modifier.padding(MyTheme.spacing.double),
verticalAlignment = Alignment.CenterVertically
) {
iconResId?.let {
MyIcon(iconResId = iconResId, tint = itemColor)
Spacer(modifier = Modifier.padding(end = MyTheme.spacing.double))
}
Column(verticalArrangement = Arrangement.spacedBy(MyTheme.spacing.small)) {
title?.let { MyTitle(text = title, color = itemColor) }
MySubtitle(text = subtitle, color = itemColor)
}
}
}
}
< /code>
Wie es im Moment aussieht. Alles scheint in Ordnung zu sein, aber außer der Symbolpositionierung.>