kombinujecie ja byście mieli urodzić słonia
czy to musi być obiekt tablica obiektów Integer[] a możne to być zwyczajna tablica prymitywnych int[] ?
Intent intent = new Intent();
Bundle bundle = new Bundle();
//to jeżeli nie musi być obiekt możne być zwyczajna tablica typów prymitywnych
bundle.putIntArray("nazwa", int[] value);
intent.putExtras(bundle);
startActivity(intent);
tak się przesyła dane między Aktywnosciami ale nie należy z tym przesadzać !
co do przesyłania Integer[] miedzy aktywnosciami to również można zrobić to tworząc klasę danych zawierającej np: ArrayList<Integer> która będzie posiadała zdolności parcelowania się lub serializowania
ewentualnie zamiast tablicy użyj ArrayList i do kolekcji wrzuć te obiekty Integer następnie skorzystaj z bundle.putIntegerArrayList("nazwa", ArrayList<Integer> value)
rozwiązanie na szybko z serialozowaniem ale parcelowanie to zasada podobna tylko klasa inna ale efekt ten sam:
public static class Serialeable implements Serializable {
private static final long serialVersionUID = 1534536456345783643L;
public List<Integer> content;
public Serialeable(Integer[] value) {
content = Arrays.asList(value);
}
public Integer[] getArray() {
return content.toArray(new Integer[content.size()]);
}
}
sposób użycia, wysyłanie:
Intent intent = new Intent();
Bundle bundle = new Bundle();
Integer[] tablica = new Integer[] {new Integer(1), new Integer(2)};
data.putSerializable("nazwa", new Serialeable(tablica));
intent.putExtras(bundle);
startActivity(intent);
sposób użycia, odbieranie:
Bundle extras = getIntent().getExtras();
Serialeable kontener = (Serialeable) extras.getSerializable("nazwa");
Integer[] tablica = kontener.getArray();
zapomniałbym o najlepszym rozwiązaniu ale najmniej efektownym, umieszczenie deklaracji tablicy poza obiema aktywnosciami wewnątrz kontekstu aplikacji to rozwiązanie jest najlepsze 😉