有没有一种方法可以在共享首选项中列出布尔值。我有一个带有复选框的设置列表,我想通过多个会话保存这些设置。为此,我需要保存一个布尔值列表。设置和获取布尔值列表的最佳方式是什么。
您可以尝试使用setStringList
,其中"0"
表示false,"1"
表示true。shared_preferences文档显示有一个setBool
,但没有setListBool
。https://pub.dev/documentation/shared_preferences/latest/shared_preferences/SharedPreferences-class.html
如果只使用布尔值列表,则该列表将看起来像[true,true,false,false,true]。你必须再列一张支票框清单,然后嫁给这两个家伙才能得到或确定。
更好的想法是准备一个对象列表。每个对象都是一对复选框值和状态(true/false或checked/uunchecked(。另一种选择是准备一个JSON并从共享首选项中获取/设置JSON。
Stackoverflow上的这个答案显示了如何在sharedprefs中获取JSON数组。正如你所能猜到的,这套很相似。