该错误通常表示在应用程序中使用的 Compose Snapshot 还未被打开或初始化。可能的解决方法是在 Composable 中添加一个“SnapshotStateHolder”,然后使用该状态来初始化你的界面。
以下是一个示例 Composable,它使用了“SnapshotStateHolder”来初始化一个文本:
@Composable
fun MyComposable() {
val text by remember { mutableSnapshotOf("InitialText") }
Text(text)
}
请注意,你需要导入以下内容才能使用“mutableSnapshotOf()”:
import androidx.compose.runtime.mutableSnapshotOf
import androidx.compose.runtime.snapshots.SnapshotStateHolder
将此代码添加到你的 Composable 中,并确保初始化你的 SnapshotStateHolder,在这个例子中为“InitialText”,就可以避免“Snapshot is not open”错误。