Страница 1 из 1

Как правильно обновить данные для списка при изменении?

Добавлено: 25 авг 2013, 16:13
247250
Здравствуйте.
Подскажите как правильно обновить данные для адаптера списка в главном фрагменте при изменении списка в дочернем фрагменте.
Простое приложение на фрагментах.
Есть список в главном фрагменте MainFragment и список в дочернем фрагменте ChildFragment.
Строки в главном списке отображают кол-во выделенных строк в дочернем.
Т.е. при клике на строку в главном списке открывается дочерний фрагмент со списком (мультивыбор).
Выделили там пару строк, нажали сохранить, открылся главный фрагмент и там циферка на данной строке изменилась.

Моя реализация:
1. при клике на строке в главном списке вызываю startActivityForResult(intent.putExtra("month", position), 6);
2. открывается ChildFragment, выбираю пару строк, сохраняю данные в бд. Вызываю getActivity().setResult(getActivity().RESULT_OK, intent); intent содержит новую циферку о кол-ве выделенных в доч. списке.
3. попадаю в MainActivity.onActivityResult. Новую циферку присваиваю глобальной переменной.
4. создаю public метод, который будет возвращать эту переменную.
5. попадаю в MainFragment - метод onResume. Там вызываю этот public метод и меняю данные для адаптера + sAdapter.notifyDataSetChanged(); В данной строке появилась новая циферка.

Мне кажется, что всё как-то сложно и есть более простой способ.
Спасибо.

Re: Как правильно обновить данные для списка при изменении?

Добавлено: 25 авг 2013, 17:07
rezak90
первый же вопрос: зачем два активити использовать если есть фрагменты?