android - Jetpack Compose 水平对齐问题

标签 android android-jetpack-compose

enter image description here
我需要将图像和 TextView 定位到卡片的开头,子列水平居中对齐,但是正如您从照片中看到的那样,列以某种方式被拉伸(stretch)了放置图像的屏幕宽度和中心的 TextView 。任何人都可以看到我的代码有任何问题吗?

@Composable
fun TrainerCard(profile: TrainerProfile) {
Card(modifier = Modifier
    .height(180.dp)
    .fillMaxWidth()
    .padding(4.dp)) {
    Column(modifier = Modifier
        .fillMaxHeight()
        .width(120.dp)
        .border(1.dp, color = Color.Red),
        horizontalAlignment = Alignment.CenterHorizontally) {
        Image(
            modifier = Modifier
                .size(120.dp)
                .padding(top = 4.dp, start = 4.dp),
            painter = painterResource(R.drawable.pokepals_logo),
            contentDescription = null
        )
        Text(
            text = profile.trainerName,
            style = MaterialTheme.typography.subtitle1)
        }
    }
}    

最佳答案

在您的 Column添加 wrapContentWidth(Alignment.Start)修饰符:

    Column(modifier = Modifier
        .fillMaxHeight()
        .width(120.dp)
        .wrapContentWidth(Alignment.Start)
        .border(1.dp, color = Color.Red),
        horizontalAlignment = Alignment.CenterHorizontally
        ) 
enter image description here

关于android - Jetpack Compose 水平对齐问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68308313/

相关文章:

android - 将 androidTest 迁移到 Compose

android - Jetpack Compose 状态提升、预览和 ViewModels 最佳实践

java - Android多通知BroadcastReceiver

java - Android 应用程序内部数据存储

java - 从 build.gradle 文件中读取静态 Java 类

android - Jetpack Compose 中的居中文本

gradle - 当buildFeature.compose = true时如何添加gradle依赖?

android - Jetpack 撰写单行输入文本

android - 当我在谷歌播放控制台中更新应用程序时,如何设置更新类型 "In App Update"?

android - 使 EditText 接受并显示 HTML 格式的文本