我们如何在Jetpack Compose中实现这个功能
我正在做类似这样的事情
Button(
elevation = ButtonDefaults.elevation(
defaultElevation = 0.dp,
pressedElevation = 8.dp,
disabledElevation = 0.dp
),
onClick = { onClick },
shape = RoundedCornerShape(28.dp),
modifier = modifier
.fillMaxWidth()
.shadow(0.dp),
contentPadding = PaddingValues(15.dp),
colors = ButtonDefaults.buttonColors(backgroundColor = Color.White),
border = BorderStroke(1.dp, Color.Grey)
) {
Box(modifier = modifier.fillMaxWidth(),
contentAlignment = Alignment.Center) {
Icon(
imageVector = imageVector,
modifier = Modifier
.size(18.dp),
contentDescription = "drawable icons",
tint = Color.Unspecified
)
Spacer(modifier = Modifier.width(10.dp))
Text(
text = buttonText,
color = Color.Black,
textAlign = TextAlign.Center
)
}
}
正如您所看到的,Google徽标位于我需要它在盒子开头的文本左侧,那么我该如何做呢?
Modifier.align(Alignment.CenterStart)
,并在Text
中添加Modifier.align(Alignment.Center)
。 - ADMBox
而不是下面答案中建议的Row
吗?当你需要将一个项目居中布局,另一个项目放在某个侧面/角落时,使用Box
是正确的方法。此外,你也可以安全地删除Spacer
,因为它对Box
没有影响。 - Phil Dukhov