Отправка объектов ArrayList между действиями - PullRequest
1 голос
/ 29 июля 2011

У меня проблема с попыткой передать объект ArrayList из Activity в Activity. В настоящее время я анализирую XML-ответ, используя SAX Parser. Информация, которую я анализирую, попадает в ArrayList. Затем информация из ArrayList используется для заполнения ListView с использованием заголовка в качестве имени, отображаемого на слайдах списка.

То, что я хочу сделать, - это когда я нажимаю на элемент в списке, связанная с ним информация также будет отправлена ​​в новое действие и заполнит поля, в которых будет отображаться дополнительная информация.

Я попытался создать новый адаптер, который ссылается на новый файл XML-макетов, но данные не передаются. (

Я просмотрел связки, но отправит ли он весь массив или только данные, связанные с представлением списка, которое я использую?

Какой-нибудь совет относительно подходов, которые я могу использовать, чтобы сделать это?

Заранее спасибо

Ответы [ 3 ]

0 голосов
/ 29 июля 2011

U может отправить весь ArrayList, если он содержит значения String, используя этот метод putStringArrayListExtra(name,value); это должно быть помещено в Intent или связку перед запуском Activity с тем же намерением ...

0 голосов
/ 29 июля 2011

Вы можете попробовать использовать Дополнительное содержимое содержимого, как показано в этой теме: Как передать данные между действиями в приложении Android?

Кроме того, вы можете наследовать от класса Application и устанавливать там некоторые переменные для передачи данных по всем действиям в вашем приложении.

0 голосов
/ 29 июля 2011

При отправке из Из активности

Intent myIntent = new Intent(From.this, To.class);
myIntent.putStringArrayListExtra("name",value);                             
 From.this.startActivity(myIntent);

и при получении Из Из активности

Bundle bundle = getIntent().getExtras();
ArrayList<String> list=bundle.getStringArrayList("name");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...