Как сохранить значение в действии после возвращения из другого действия

#android #android-intent #android-activity

#Android #android-намерение #android-activity

Вопрос:

Я создал действие A> B> C. Действие A передает намерение в B, которое будет определять значение в B ListView. Проблема в том, что когда я нажимаю кнопку «Назад» на C, предыдущего списка на B больше нет. Как мне сохранить значение списка на B, когда пользователь нажимает кнопку «Назад» на C?

Комментарии:

1. Покажите некоторый код и объясните больше. Если вы запускаете C из B и просто возвращаетесь к B из C (используя кнопку НАЗАД или вызывая finish() C), B должен быть точно таким, каким вы его оставили.

Ответ №1:

Используйте статическую переменную списка для хранения / заполнения данных списка. Вы можете заполнить этот список в activity A и использовать в activity B, и поскольку эта переменная будет сохраняться в течение всего жизненного цикла Android, список в activity B не должен быть затронут при возвращении из activity C.

 public class ActivityA extends Activity{
//Inside Activity A
public static final List<MODEL> DATA_LIST = new ArrayList<MODEL>(); //here MODEL may be any type of object as required
//...
}
  

Чтобы использовать эту переменную в Activity B, просто используйте ActivityA.DATA_LIST для ссылки на переменную list.