Shared Preferences Flutter 中的布尔值列表

List of booleans in Shared Preferences Flutter

有没有办法让我在共享首选项中有一个布尔值列表。我有一个带有复选框的设置列表,我想通过多个会话保存这些设置。为此,我需要保存一个布尔值列表。设置和获取布尔值列表的最佳方法是什么。

您可以尝试使用 setStringList 列表,其中 "0" 表示 false,"1" 表示 true。 shared_preferences 文档显示有 setBool 但没有 setListBoolhttps://pub.dev/documentation/shared_preferences/latest/shared_preferences/SharedPreferences-class.html

如果您只使用布尔值列表,那么该列表将类似于 [true, true, false, false, false, true]。你必须再做一个复选框列表,然后嫁给这两个家伙才能得到或设置。

更好的办法是准备一个对象列表。每个对象都是一对复选框值和状态(true/false 或 checked/unchecked)。 另一种方法是根据共享首选项准备 JSON 和 get/set JSON。

Whosebug 上的

This 答案显示了如何在 sharedprefs 中获取 JSON 数组。正如您猜到的那样,该集合非常相似。