Как сохранить список <String>в SharedPreferences в kotlin? - PullRequest
0 голосов
/ 21 января 2020

В моем проекте у меня есть список строк. Я хочу сохранить этот список в общих настройках. Кто-нибудь может помочь?

data class select(
    @SerializedName("items")
    var items: MutableList<String>?=null
)

1 Ответ

1 голос
/ 21 января 2020

Вы можете сохранить список как Json Текст в SharedPreference с помощью Gson, а затем работать соответствующим образом

//saving list in Shared Preference
    fun setLists(list:ArrayList<String>){
        val gson = Gson()
        val json = gson.toJson(list)//converting list to Json
        editor.putString("LIST",json)
        editor.commit()
    }
    //getting the list from shared preference
    fun getList():ArrayList<String>{
        val gson = Gson()
        val json = preferences.getString("LIST",null)
        val type = object :TypeToken<ArrayList<String>>(){}.type//converting the json to list
        return gson.fromJson(json,type)//returning the list
    }

Не забудьте внедрить библиотеку Gson в файл gradle уровня вашего приложения

...