Как я могу пройти ArrayList
от одной деятельности к другой деятельности?pass arraylist от одного вида деятельности до другого
ответ
Когда вы создаете намерение. Вы можете установить данные по
intent.putExtra("keyName", "somevalue");
когда намерение B начать вы можете получить данные по
Bundle extras = getIntent().getExtras();
if(extras !=null)
{
String value = extras.getString("keyName");
}
По мне, создать статический класс и поместите массив-список в нем в то время как вы пройти от одного вида деятельности к другой.
Когда вы достигнете другого действия, получите доступ к значению, которое вы сохранили в статическом классе.
UPDATE
я узнал со временем, что это ужасная практика. Когда объекты стираются/воссоздаются, значения Static могут быть потеряны. и затем мы помещаем много данных в память тоже. Использование ничего подобного Parcelable хорошая практика
Использование статических полей для передачи данных из одной активности в другую - очень плохой дизайн:/ –
И почему так !? если только небольшое количество значений !? –
Потому что, когда пользователь делает такие вещи, как go BACK или onPause() и т. Д., Приложение по-прежнему считает, что переменные находятся в памяти, когда это не так, и в FC-приложениях. Я узнал трудный путь :-) –
Это зависит от типа ArrayList
putIntegerArrayListExtra(String name, ArrayList<Integer> value)
putParcelableArrayListExtra(String name, ArrayList<? extends Parcelable> value)
putStringArrayListExtra(String name, ArrayList<String> value)
putCharSequenceArrayListExtra(String name, ArrayList<CharSequence> value)
Тогда вы можете прочитать от вас следующей деятельности, заменив put
с get
с ключевой строкой в качестве аргумента, например
myIntent.getStringArrayListExtra("arrayPeople");
Yaaa Я получил огромное спасибо –
Добро пожаловать и не забудьте отметить этот ответ, если это поможет :) –
@LabeebP Как передать ArrayList
Вы можете создать один пакет в пачке положить parceable список массива обеспечивают labeeb и установите намерение здесь код для
Intent i = new Intent(this,name.class);
Bundle b = new Bundle();
b.putIntegerArrayListExtra(String name, ArrayList<Integer> value);
//b.putParcelableArrayListExtra(String name, ArrayList<? extends Parcelable> value);
//b.putStringArrayListExtra(String name, ArrayList<String> value);
i.putExtra(String name,b);
startActivity(i);
И получить данные в другой вид деятельности, как
//pseudo code
Bundle b = getIntent().getExtra().putParcelableArrayListExtra(String name);
В отозванных деятельности следует использовать
Bundle bundle = getIntent().getExtras();
ArrayList<String> stringArray = bundle.getStringArrayList(ParentActivity.STRING_LIST);
где ParentActivity.STRING_LIST
является ключом постоянным для списка.
- 1. Pass stringbuilder от одного вида деятельности до другого
- 2. Pass ArrayList от до деятельности
- 3. передать ArrayList <Point> от одного вида деятельности до другого вида деятельности в android?
- 4. Pass Strings от одного вида деятельности до нормального класса
- 5. От одного вида деятельности до двух других
- 6. Получить корневой вид одного вида деятельности из другого вида деятельности
- 7. Pass String [] от одного вида деятельности к другому
- 8. Pass Arraylist от фрагмента до его собственной деятельности
- 9. Отправить Arraylist объекта от одного вида деятельности к другому
- 10. Передайте arraylist от одного вида деятельности к другому
- 11. Передача массива <Object> от одного вида деятельности до другого
- 12. Pass JSON Объект от одного действия до другого Android
- 13. Отправить сообщение от одного вида деятельности другому
- 14. Pass объектов от основной деятельности до IntentService
- 15. Как отредактировать EditText от другого вида деятельности
- 16. Как изменить медиаплеер от другого вида деятельности
- 17. Ждите результата от другого вида деятельности
- 18. Android populate listview от другого вида деятельности
- 19. Отделка Деятельность от другого вида деятельности
- 20. Завершить деятельность от другого вида деятельности
- 21. отправить стоимость от одного вида деятельности другому
- 22. Как добавить элемент в Arraylist из другого вида деятельности?
- 23. Pass ArrayList от vb6 до объекта vb.net
- 24. Pass Список <Double> значение от одного вида деятельности к другому
- 25. Pass ArrayList для другого класса
- 26. Передача конкретных данных ArrayList, выбранных Пункт Listview, от одного вида деятельности на другой вид деятельности
- 27. Получение данных из другого вида деятельности ArrayList [Java]
- 28. Проходят TreeMap от одного вида деятельности на другой
- 29. как передавать данные от одного вида деятельности другому?
- 30. Pass объект реализация Parcelable от одного вида деятельности на другую деятельность
Его ArrayList, а не строка. –
ohkk ill try thanks –
im не удалось получить эти значения ... im получить нулевое значение ... заранее спасибо –