У меня есть определенные данные в классе модели данных и вы хотите поделиться этими данными/объектом с другим видом деятельности. Единственный экземпляр может быть хорошим выбором, но вы хотите закончить мою предыдущую деятельность и, следовательно, получите нулевой указатель. Пожалуйста, предложите наилучший способ сделать это?Как обмениваться объектами между действиями, сериализацией или SingleInstance?
2
A
ответ
1
Лучший способ использования сериализации, SingleInstance не будет работать здесь, потому что вы должны завершить свою деятельность.
Intent intent = new Intent(this, B.class);
ArrayList<String> data = new ArrayList<String>();
arrays.add("testing");
intent.putExtra("arrayList", data);
startActivity(intent);
Вы можете использовать свои объекты вместо String и другую сторону, которую вы можете извлечь, используя это.
ArrayList<String> arrayList =(ArrayList<String>) getIntent().getSerializableExtra("arrayList");
1
Лучшая практика заключается в том, чтобы использовать объект намерения для этого, помещая либо посылку, либо сериализованные данные в свои дополнительные функции.
Статик опасен, так как вы всегда должны быть готовы к делу, в котором ваше заявление будет убито и восстановлено.
Смежные вопросы
- 1. Как обмениваться объектами между потоками
- 2. Активация Android-переключателя между действиями SingleInstance
- 3. обмениваться бизнес-объектами между webservice
- 4. Как обмениваться курсором между фрагментами/действиями
- 5. Как обмениваться объектами области между экранами
- 6. neomodel: как обмениваться индексом между объектами StructuredNode
- 7. Как обмениваться объектами между Java-приложениями?
- 8. Как обмениваться объектами между несколькими классами
- 9. Как обмениваться объектами между разными классами?
- 10. Как я могу обмениваться кодами между несколькими действиями в Android?
- 11. TestNG, Selenium Как обмениваться объектами между несколькими классами
- 12. Как обмениваться объектами между несколькими запросами на получение в PHP?
- 13. Как обмениваться объектами, отличными от отправки, между потоками?
- 14. Как я могу обмениваться объектами между потоками в Perl?
- 15. Как передать список между действиями?
- 16. Как обмениваться объектами, содержащими дескриптор файла?
- 17. Как обмениваться объектами через процессы в .Net?
- 18. Можно ли обмениваться объектами между приложениями без сериализации?
- 19. C++/Linux, обмениваться объектами в памяти между приложениями
- 20. Обмениваться объектами с атрибутом дескриптора файла между процессами
- 21. android: launchMode singleInstance Questions
- 22. Как обмениваться данными между iPhone?
- 23. Как обмениваться logback.xml между проектами
- 24. Как обмениваться информацией между контроллерами?
- 25. Обмен объектами между объектами
- 26. Разъяснение между сортировкой и сериализацией
- 27. Как обмениваться информацией между сайтами?
- 28. Как обмениваться данными между приложениями?
- 29. Как обмениваться сигналами между приложениями?
- 30. Android: как перемещаться между действиями?
просто используйте статическое ключевое слово перед переменной. И получить доступ к нему с именем class.variable- –
@manish это не очень хорошая практика, и если моя активность будет убита, все статические данные также не сработают. Статические данные останутся, если объект есть. Пожалуйста, предоставьте исправление, если я ошибаюсь. –
В моем случае все статические данные будут сохранены во время работы вашего приложения, это не зависит от жизненного цикла активности. –