Ely*_*lye 7 android android-jetpack-compose
在 Kotlin 中,函数是一等公民。我们可以将一个函数存储在一个变量中,如下所示
val functionVariable: () -> Unit = ::myFunction
fun myFunction() { }
Run Code Online (Sandbox Code Playgroud)
但是,对于@Composable功能,我该怎么做?
如果我做了下面的事情,它会犯规,即 org.jetbrains.kotlin.diagnostics.SimpleDiagnostic@e93b05f8 (error: could not render message)
val functionVariable: () -> Unit = ::myFunction
@Composable
fun myFunction() { }
Run Code Online (Sandbox Code Playgroud)
有没有办法将可组合函数存储为变量?
尚不支持可组合函数引用(这就是错误消息的实际含义)。此外,@Composable注解是函数签名的一部分,因为它为函数添加了一些参数。所以你需要使用val functionVariable: @Composable () -> Unit = { myFunction() }.
| 归档时间: |
|
| 查看次数: |
349 次 |
| 最近记录: |