包裹内容但具有最小宽度/高度 - Jetpack Compose

kc_*_*dev 15 android-jetpack-compose

我有一个盒子和一些文本。Text 实际上只是一个数字,可以是 1、2 或 3 位数字。一方面,我想包装内容以适应我们得到 3 位数字的情况(这会使框更宽),但另一方面,如果我们得到 1 位数字,框就会变得非常宽。又瘦又看起来很尴尬。

我已经尝试Modifier.width(Int.dp)Modifier.wrapContentWidth(),甚至将两者结合起来,但无法让它正常工作。Compose 中是否有一种方法可以包装内容,但具有最小(默认)宽度或高度?

如果可能的话,我宁愿不使用if - else关于输入大小的声明,因为这会有点违背目的。

Adr*_*n K 33

您可以使用widthIn修饰符指定最小宽度,同时允许元素在必要时进一步扩展。

@Composable
fun Foo(){
    Text(text = "1", modifier = Modifier.widthIn(min = 32.dp))
}
Run Code Online (Sandbox Code Playgroud)