Могу ли я поместить список в SharedPreferences во флаттере? - PullRequest
0 голосов
/ 11 апреля 2019

Могу ли я поместить ArrayList или List объект в SharedPreferences во флаттере?Потому что я только что понял, что у флаттера нет gson в их дротике

Итак ... я хочу сохранить как любимые книги, нажав значок звездочки, и когда я коснусь этого, эти книги будут сохранены в sharedPreferences.

и я вижу список моих любимых книг.

Ответы [ 2 ]

2 голосов
/ 11 апреля 2019

Вы можете сохранить List<String> в SharedPreferences. Вот как вы должны это сделать.

prefs.setStringList("key", yourList);

SharedPreferences prefs;
List<String> list;
// ...


Future<bool> _saveList() async {
  return await prefs.setStringList("key", list);
}

List<String> _getList() {
  return prefs.getStringList("key");
}
0 голосов
/ 11 апреля 2019

Под ArrayList, если вы имеете в виду List-структуру данных Flutter, вы можете сохранить только List в SharedPreference, используя этот метод:

Future <bool> setStringList(String key, List<String> value)

И вы можете получить список с помощью:

List<String> getStringList(String key)

Для получения дополнительной информации о shared_preferences прочитайте эту статью.

Несколько бесплатных советов: SharedPreferences предназначены для сохранения данных, которые находятся в паре ключ-значение и являютсясвязанные с настройками пользователя.Он не должен сохранять какие-либо сложные данные, такие как список пользовательских объектов.

Если вам нужно хранить более сложные данные, рассмотрите возможность использования SQLite.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...