小编Dav*_*rez的帖子

学习 Kotlin 问题。无法理解修饰符参数

我有生以来第一次学习编程。我花了大约 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)

android kotlin android-jetpack-compose

2
推荐指数
1
解决办法
294
查看次数

标签 统计

android ×1

android-jetpack-compose ×1

kotlin ×1