Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
okunetsky
0 / 0 / 0
Регистрация: 27.02.2015
Сообщений: 29
#1

Как сохранить ArrayList - Программирование Android

21.07.2016, 20:06. Просмотров 286. Ответов 4
Метки нет (Все метки)

Знаю,вопрос наверное глупый,но как? У меня приложение "Телефонная книга". Если б я просто писал на джаве, то просто добавлял бы контакты в Еррейлист. Но на андроиде так не получаеться. Я перехожу из Главной Активити в ту, где создаеться контакт. Возвращаюсь,а все контакты ,которые были до этого пропадают. Это,наверное,связано с жизненными цыклами активити. Но как мне тогда в какой-то файл на телефоне это сохранить? БД на андроид это пока слишком сложно для меня)

Вот я добавляю контакт(пока только имя)
Java
1
2
3
4
5
6
7
8
9
@Override
    public void onClick(View view) {
        intent=new Intent(this,MainActivity.class);
        Person person=new Person(edtName.getText().toString());
        if (!edtName.getText().toString().equals("")) {
            intent.putExtra("data1", person);
        }
        startActivity(intent);
    }
Вот в начальной активити я добавляю этот контакт в список
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Override
    protected void onResume() {
        super.onResume();
        Intent intent=getIntent();
        if (intent.hasExtra("data1")) {
            Person person= (Person) intent.getSerializableExtra("data1");
            String nm=person.getName();
            textView.setText("true "+nm);
            mContactAdapter.add(person.name);
            mContactAdapter.clear();
            persons.add(person);
            for (Person p : persons) {
                mContactAdapter.add(p.name);
            }
        }
    }
Но в списке только последний контакт,который я добавил. Кароч, учитсья мне еще и учиться. Я так понял,когда активити переходит в OnPause() она теряет все данные?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2016, 20:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как сохранить ArrayList (Программирование Android):

Android. Как сохранить ArrayList<String> в файл - Программирование Android
Ребята, помогите пожалуйста. Есть список: ArrayList&lt;String&gt; myList; Пишу приложение типа заметок на Android, в качестве...

Как поместить в preferences arrayList типа: arraylist<Class> - Программирование Android
Как поместить в preferences arrayList типа: arraylist&lt;Class&gt; Class содержит вид: public class CountryClass { private String...

Можно ли ArrayList с числами сохранить в SharedPreferences? - Программирование Android
Ребят, у меня есть ArrayList с 12 числами, как его можно сохранить SharedPreferences, ведь там идет работа с примитивными типами? Если кто...

Как в ArrayList найти значение? - Программирование Android
Допустим у меня есть ArrayList с объектами, у объектов этих есть ID и NAME. Как мне найти по id или name объект? Сейчас делаю по...

Как связать ArrayList, ListView и AsynkTask? - Программирование Android
В AsinkTask в doInBackGround у меня есть массив final ArrayList&lt;String&gt; vkmass = new ArrayList&lt;String&gt;(); В цикле я его в этом же методе...

Как добавить в ArrayList массив из ресурсов? - Программирование Android
Возможно ли добавить в ArrayList&lt;String&gt; array_list = new ArrayList&lt;String&gt;(); массив из ресурсов? или только array_list.add ?

4
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
21.07.2016, 20:38 #2
Оптимальное для ввода нового контакта использовать диалог, тогда активити не потеряется. Но при закрытии программы по любому надо все где-то сохранять, так что базы данных пригодятся. Конечно возможны извращения от сохранения в файл (xml, csv и т.д.) до сохранения в Preference. Дело вкуса и степени оригинальности автора.
0
okunetsky
0 / 0 / 0
Регистрация: 27.02.2015
Сообщений: 29
21.07.2016, 22:01  [ТС] #3
Спасибо,но диалоговые окна не вариант. просто не понимаю, куда деваються мои переменные? В обычном JavaFX смена Scene не вызывает никакой пропажи. Как мне это охранить пока в переменных? Потом уже буду БД изучать.
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
22.07.2016, 04:16 #4
А почему не вариант?
0
CoolMind
419 / 402 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
22.07.2016, 20:59 #5
okunetsky, почитайте про startActivityForResult.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.07.2016, 20:59
Привет! Вот еще темы с ответами:

Как сохранить все Exception - Программирование Android
Привет. Наверное все знают о NullPointerException и о том что код идеальным не бывает. Есть ли какие логгеры чтобы хотябы сохранить...

Как сохранить целочисленную переменную в кэше? - Программирование Android
как сохранить целочисленную переменную в КЭШе?? можете привести фрагмент кода??

Как и где сохранить данные игры - Программирование Android
И например,я вышел из игры,или вырубился мобильный..Где я могу сохранить данные ,если я хочу потом вернуться и снова играть с того...

Как и куда сохранить в Internal Storage? - Программирование Android
Нужно сохранить данные которые будут досупны после переустановки приложения или очистки данных приложения пользователем. External...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
22.07.2016, 20:59
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru