小编Azu*_*123的帖子

为什么修饰符大小没有被覆盖?

我有一个可组合函数,它为表面分配大小。

@Composable
private fun CreateImage(modifier: Modifier = Modifier) {
    Surface(
        modifier = modifier
            .size(150.dp)
            .padding(5.dp),
        shape = CircleShape,
        border = BorderStroke(1.dp, Color.LightGray)
    ) {
        Image(
            painter = painterResource(id = R.drawable.profile_image),
            contentDescription = "Profile Image",
            contentScale = ContentScale.Crop
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

当我调用另一个方法并更改修饰符参数中的大小时,它不应该坚持 150dp。

如果我调用这个方法:

@Composable
private fun ChangeSize(name: String) {
    CreateImage(Modifier.size(100.dp))
}
Run Code Online (Sandbox Code Playgroud)

即使在 CreateImage 中我将其设置为 150dp,它的大小仍保持为 100dp。为什么尺寸没有变为 150dp 而是保持 100dp?

我认为应该将其更改为 150dp。为什么事实并非如此?

android kotlin android-jetpack-compose

4
推荐指数
1
解决办法
790
查看次数

标签 统计

android ×1

android-jetpack-compose ×1

kotlin ×1