kotlin 错误:在合成期间创建状态对象时未使用remember [UnrememberedMutableState from androidx.compose.runtime]

4zcjmb1e  于 2023-03-03  发布在  Kotlin
关注(0)|答案(2)|浏览(240)

在我的代码中,我调用了一个可组合函数:

ShowSomeComposable(
    modifier = Modifier,
    isActive = mutableStateOf(true),
)

我可以编译这个并在本地运行。但是我的CI系统上的Lint检查抱怨说:
我的文件.kt:147:错误:在合成期间创建状态对象时未使用remember [UnrememberedMutableState from androidx.compose.runtime] isActive = mutableStateOf(true),
那么我该如何替换呢?

js4nwp54

js4nwp541#

我还不是Maven,但从我在这里看到的来看https://developer.android.com/jetpack/compose/state#state-in-composables
会建议您的代码作为:

var isActiveValue by remember { mutableStateOf(true) }

ShowSomeComposable(
    modifier = Modifier,
    isActive = isActiveValue,
)

这显示我警告在第一,和治疗是检查您有这些导入(可以添加的IDEA建议的行动或手动)

import androidx.compose.runtime.setValue
import androidx.compose.runtime.getValue
k5ifujac

k5ifujac2#

为什么这里需要使用mutableState而不是简单的布尔值?
我的意思是,大多数时候,当我使用mutableStateOf时,我会在viewModel中使用它,或者直接在可组合函数中使用它。

var boolean by mutableStateOf(true)

相关问题