我想知道是否可以在SharedPreferences 中存储字符串数组。在我想要的应用程序中,要存储的名称集。我知道这可以使用DB完成,我只想知道是否可能将这些名称集保存为SharedPreferences 中的字符串数组。
答案 0 :(得分:6)
您可以在API级别11及更高版本中使用SharedPreferences
存储字符串集。请参阅getStringSet()
和putStringSet()
ю
在11级之前的API级别中,您可以使用某种黑客攻击。例如,如果需要在键“stringArray”下存储字符串数组,则可以使用putString
和键“stringArray.1”保存数组中的每个字符串。 ,“stringArray.2”,依此类推。
答案 1 :(得分:2)
如果您正在寻找StringTokenizer,那么blog post 1和blog post2会有所帮助
答案 2 :(得分:1)
无法将它们存储为数组,但您可以将它们连接起来,然后在加载时使用StringTokenizer
拆分它们。如果这对您有所帮助,我可以提供一些代码帮助。
答案 3 :(得分:0)
在共享首选项中,您可以存储键值对等数据。 我通常做的是插入所有数据然后获取密钥列表并迭代它,将密钥设置为任何唯一的,无论是数字1,2,3等
使用
SharedPreference sp = context.getSharedPreferences(“myPrefs”,MODE_WORLD_READABLE); 映射presetDataMap = sp.getAll();
然后遍历presetDataMap,
Iterator itt = presetDataMap.keySet()。iterator();
希望这会有所帮助。