#java #android #android-fragments #persistence #android-lifecycle
#java #Android #android-фрагменты #постоянство #android-жизненный цикл
Вопрос:
У меня есть Activity
цель отредактировать некоторый пользовательский класс A
. Я использую a Fragment
, которому передается экземпляр a
в его статическом методе создания Fragment newInstance(A foo)
. Затем этот экземпляр разделяется ( Parcelable
интерфейс реализован A
) на аргументы фрагмента. Это означает, что my Activity
не использует один и тот же экземпляр объекта с Fragment
.
Пользователь может редактировать некоторые свойства A
использования View
, доступные с Fragment
помощью . В событии жизненного цикла «на паузе» я хочу синхронизировать View
поля с моим экземпляром A
. Состояние представления уже сохранено должным образом, поэтому мне не нужно беспокоиться об этом.
Как мне реализовать это дальше? Я подумываю о сохранении моих объектов данных в базе данных MySQLite. Должен ли мой Activity
by отвечать за обновление обновленного экземпляра A
? Или я должен Fragment
выполнить эту работу?
Ответ №1:
Есть кое-что, что вы можете проверить, например, ORMLite и greenDAO. Они обеспечивают сохраняемость данных и переносят базы данных SQLLite. greenDAO — это то, что я использовал в прошлом для выполнения подобных действий.
Комментарии:
1. Хотя это действительно полезно для рассмотрения, это не отвечает на мой вопрос о том, какой класс должен отвечать за то, что сохранение происходит в первую очередь. Может быть, вы также можете прокомментировать это?
2. Ах, я неправильно понял ваш вопрос, мои извинения. Я бы предложил использовать фрагмент для выполнения вызова для сохранения данных. Я рассуждаю так: если вам когда-нибудь понадобится повторно использовать это в другом действии, вы можете это сделать, а не дублировать код на уровне действия.