Jetpack Compose:分析表达式时出现异常

Jetpack Compose: Exception while analyzing expression

我正在尝试使用 Jetpack Compose 构建简单的应用程序。 我关注 this documentation,下载了存储库并创建了我自己的模块。

代码非常简单:

import android.app.Activity
import android.os.Bundle
import androidx.compose.Composable
import androidx.ui.core.Text
import androidx.ui.core.setContent
import androidx.ui.material.surface.Card
import androidx.ui.graphics.Color

class MainActivity : Activity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyApp()
        }
    }

    @Composable
    fun MyApp() {
        Card(color = Color.Cyan) {
            Text("test")
        }
    }
}

但我注意到一些可组合的小部件不起作用,并且出现以下错误:

Exception while analyzing expression at (23,9) in /path/Projects/androidx-master-dev/frameworks/support/ui/compose/src/main/java/app/myown/MainActivity.kt

其中 (23,9) 引用 Card 小部件

顺便说一下其他小部件的工作方式,例如我没有问题

@Composable
fun MyApp() {
    Padding(10.dp) {
        Text("test")
    }
}

它编译和运行完美。

我遇到以下问题:

我想还有很多其他小部件

我 运行 早些时候遇到过这个问题。

每个具有 @Composable 函数的 Kotlin 源文件都隐含地需要 import androidx.compose.composer。我说 "implicit" 是因为 Android Studio 认为它是不必要的并且倾向于删除该行(例如,您要求它优化导入)。某些 @Composable 函数可以在没有此导入的情况下继续存在,但其他函数则不能。

据我所知,这是随着库和工具的发展而变得更好的事情之一,但目前,只需留意该导入并在缺少时添加它得到比正常情况更奇怪的结果。