我有生以来第一次学习编程。我花了大约 2 周的时间通过免费课程学习 Kotlin,并专门花了一周的时间在 Android Studio 中学习 Jetpack Compose。我已经被一道练习题困住了两天,但我在互联网上遇到的每个答案都假设我知道的比我知道的还要多。这种做法包括制作一个像CorrectQuadrant这样的象限,但除非我做出对我来说没有意义的更改,否则我只能像这样In CorrectQuadrant那样得到它。
所以问题是我不太理解修饰符参数,所以尝试又尝试我终于下载了解决方案代码并发现了错误,但我无法理解为什么这是一个错误。在下面的代码中,在私有函数“ComposeInfoCard”中,您可以看到修饰符 Column 参数被 (=====) 包围。如果我用小写字母写该参数(修饰符=修饰符),我会得到正确的象限。如果我像这样写(modifier = Modifier),这就是我认为它是正确的,私有函数中的修饰符参数说“参数修饰符从未使用过”,但这不是真的,因为我使用了它四次用于 ComposeQuadrant 函数中的权重修改器。
有人可以解释为什么它需要小写,并且如果您不介意的话,请解释一下对象修饰符,就像我对此完全陌生一样?
@Composable
fun ComposeQuadrant(){
Column (modifier = Modifier.fillMaxWidth()){
Row (modifier = Modifier.weight(1f)){
ComposeInfoCard(
title = stringResource(R.string.title1),
description = stringResource(R.string.description1),
backgroundColor = Color(0xFFEADDFF),
modifier = Modifier.weight(1f)
)
ComposeInfoCard(
title = stringResource(R.string.title2),
description = stringResource(R.string.description2),
backgroundColor = Color(0xFFD0BCFF),
modifier = Modifier.weight(1f)
)
}
Row (Modifier.weight(1f)){
ComposeInfoCard(
title = stringResource(R.string.title3),
description = stringResource(R.string.description3),
backgroundColor = Color(0xFFB69DF8),
modifier = Modifier.weight(1f)
)
ComposeInfoCard( …
Run Code Online (Sandbox Code Playgroud)