android - 如何将 Set<Set<String>> 存储在 SharedPreferences 中?

标签 android sharedpreferences

我正在使用 SharedPreference在我的项目中。

我知道sharedPreference可以储存Set<String>通过使用 prefs.putStringSet() .但是我有一种情况需要存储 Set<Set<String>>sharedPreference .

我怎样才能做到这一点?

最佳答案

你可以使用Gson来转换Set<Set<String>>字符串然后将其保存在 sharepreference 中, 但没有直接的方法将此类型保存在 sharepreference

Gson gson = new Gson();
    String jsonObject = gson.toJson(your_set_variable);

    editor.putString(KEY_PROJECTS, jsonObject );
    editor.commit();

已更新: 这是来自谷歌的 Gson 库,如果你需要使用它,将它添加到你的 gradle 依赖项中

compile 'com.google.code.gson:gson:2.8.0'

这个库为您提供了将任何对象转换为字符串,然后将此 json 字符串转换为您想要的类型,stackoverflow 和 google 有很多很多使用它的示例

关于android - 如何将 Set<Set<String>> 存储在 SharedPreferences 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48134723/

相关文章:

android - 在 Android 模拟器上打开网络浏览器

android - Android Studio似乎丢失了警告消息

android - 整合我的 Android 应用程序中的 Activity 数量

Android 使用文本观察器来防止输入特殊字符

java - 高分未保存

android - 多语言支持在 android 中使用 sharedpreference 不起作用

java - Android ListView 带有来自 URL 的自定义图标

java - 使用 AppCompat PreferenceActivity 为单个应用程序提供多个首选项?

java - 通过单选按钮将选定的字符串传递给另一个 Activity

java - 在 onDrag 函数中保存坐标时出现问题