如何访问可组合函数中的共享首选项?

How to access shared preferences in Composable function?

我正在从多个 activity compose 项目迁移到单个 activity compose 项目。

迁移时我发现我在多个屏幕中使用共享首选项(现在是可组合函数)

将共享首选项对象作为参数传递给每个可组合项似乎很乏味,有没有更好的方法来做到这一点?

你不知道。

可组合函数的目的只是组合屏幕和处理 UI 事件(点击、滚动等)。

您需要使用视图模型中的共享首选项并将状态公开给可组合函数,该状态将由共享首选项更新并自动触发重新组合屏幕。

阅读State and Jetpack Compose, especially this about states, and this如何将状态与视图模型一起使用。