#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.