Jetpack Compose 第一个参数修饰符不起作用
Posted
技术标签:
【中文标题】Jetpack Compose 第一个参数修饰符不起作用【英文标题】:Jetpack Compose first argument modifier doesn't work 【发布时间】:2021-10-13 04:39:44 【问题描述】:我正在学习 Compose,我只是想为我的 LazyColumn 设置我的项目样式。但是,当我添加第一个参数时,它似乎总是拒绝它。即使我删除了填充,下一个参数也会出错。
谁能看到我遗漏的东西,因为我已经看了一个小时了。
@Composable
fun NewsArticleItem(news: News)
Row
Column(
modifier = Modifier
.padding(16.dp)
.background(Color.Green)
.fillMaxWidth()
.align(Alignment.CenterVertically)
)
Text(text = news.title, style = typography.h5)
Text(text = news.body, style = typography.caption)
【问题讨论】:
错误信息是什么? 感觉还可以。你用的是最新版的 android Studio、gradle 和 compose 吗? 【参考方案1】:你不能将dp
传递给.fillMaxWidth()
你可以在那里传递0..1
Float
,这将使它占据可用宽度的一部分,默认为1
您可以将dp
指定为.width(56.dp)
修饰符
如果这没有帮助,请指定哪个修饰符在您的情况下完全不起作用?在我的情况下,宽度固定 width
修饰符一切似乎都按预期工作
【讨论】:
请原谅。我更新了代码以更好地反映正在发生的事情。我粘贴了错误的代码。这是填充属性。 让我说清楚;这是 Android Studio 中以红色显示的填充,我不知道为什么。 @Nefario 在我的情况下很好。确定你有正确的进口?import androidx.compose.foundation.layout.padding
是的,但由于某种原因它是灰色的。我用的是北极狐,有问题吗?
@Nefario 当然,这意味着它在您的代码中使用了其他一些padding
。检查你的导入,看看是否有另一个以padding
结尾,或者尝试导航到你的padding
源代码,看看它是哪一个以上是关于Jetpack Compose 第一个参数修饰符不起作用的主要内容,如果未能解决你的问题,请参考以下文章
onKeyEvent 修饰符在 Jetpack Compose 中不起作用