передача ArrayList в другой класс

 
 
 
Сообщения:33
Здравствуйте.
Подскажите, где искать решение?
В Активити1 заполняю ArrayList.
Для проверки в этой же активити в лог вывожу значения элементов коллекции, все выводится, размер не нулевой.
class MainActivity {
ArrayList<String> listPlayers = new ArrayList();
...
Log.d("1",String.valueOf(listPlayers.size());
}



В Активити2 я должен использовать значения коллекции.
Пытаюсь просмотреть значения коллекции из первой, а также ее размер, но она пустая и размер равен нулю.
Пробую разные способы, но безрезультатно


class TwoActivity {
MainActivity players = new MainActivity()
...
Log.d("1",String.valueOf(players .listPlayers.size())
}


class TwoActivity {

Log.d("1",String.valueOf(new MainActivity().listPlayers.size())
}


class TwoActivity {
ArrayList<String> listPlayers2 = new ArrayList(new MainActivity().listPlayers);
...
Log.d("1",String.valueOf(listPlayers2.size())
}

Везде выводится нулевой размер.
Такое ощущение, что изначальная коллекция при смене активити уничтожается.

Буду благодарен, если подскажите, в каком направлении искать.
Изменен:02 июн 2018 21:10
 
 
Сообщения:33
Вроде осенило... поправьте если неправ
во второй активити создаю новый объект
MainActivity players = new MainActivity()

или анонимный объект, но в любом случае запускается конструктор, а значит в первой активити массив создается заново.
Таким образом массив и получается с нулевой длиной.
Поэтому надо использовать static!
Тогда массив будет существовать независимо от создания объектов!
))))
Люблю это чувство - "ДОШЛО"
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет