Реализация списка избранного в Android с помощью SharedPreferences - PullRequest
0 голосов
/ 08 ноября 2019

Я хочу создать список избранного, используя SharedPreferences, и пытаюсь сохранить в нем несколько списков . Существует опция для сохранения набора строк в SharedPreferences, но set не сохраняет Duplicate значения. Я хочу сохранить список дубликатов с SharedPreferences. Что я должен делать?

Также, как я могу преобразовать ArrayList<String> в HashSet<String>?

Спасибо за ваши ответы!

1 Ответ

1 голос
/ 08 ноября 2019
  1. Java конвертировать list в set:

http://mkyong.com/java/how-to-convert-list-to-set-arraylist-to-hastset

List<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
list.add("three");

Set<String> set = new HashSet<String>(list);
Я предлагаю использовать intent и bundle для хранения списка

Активность в Активность

Передача списка объектов из одногоактивность к другой активности в android

Хранение данных:

// activity a
Intent intent = new Intent(getApplicationContext(),YourActivity.class);
Bundle bundle = new Bundle();
bundle.putParcelable("test", arrayList);
intent.putExtras(bundle);
startActivity(intent);

Извлечение данных:

// activity b
Bundle bundle = getIntent().getExtras();
Object test = bundle.getParcelable("test");

Активность к фрагменту

Android передает ArrayList во фрагмент из действия

Хранить данные:

// activity a
Bundle bundle = new Bundle();  
bundle.putParcelableArrayList("test", arraylist);
fragment.setArguments(bundle);

Извлекать данные:

// fragment a
Bundle extras = getIntent().getExtras();  
List<String> arraylist = extras.getParcelableArrayList("test");
...