Parcelable, wofür ist newArray?

8

Ich implementiere Parcelable, um einige einfache Daten in einer Absicht zu übertragen.
Es gibt jedoch eine Methode in der Parcelable-Schnittstelle, die ich überhaupt nicht verstehe: newArray() .
Es hat keine relevante Dokumentation & amp; wird nicht einmal in meinem Code aufgerufen, wenn ich mein Objekt packe / entpacke.

Beispiel Parcelable Implementierung:

%Vor%

Also, meine Frage ist: Wozu dient diese Methode? und wann heißt es?
Gibt es einen Sinn, etwas anderes als return new MyParcelable[size]; in dieser Methode zu tun?

    
Teovald 26.02.2014, 09:58
quelle

2 Antworten

6

Dies ist eine Funktion, die aufgerufen wird, wenn Sie versuchen, ein Array von Parcelable -Objekten zu deserialisieren. Für jedes einzelne Objekt wird createFromParcel aufgerufen.

    
vipul mittal 26.02.2014, 10:10
quelle
4

Es ist da, um das typisierte Array ohne all die generischen Sachen vorzubereiten. Das war's.
Es ist in Ordnung, nur den Standard return new MyParcelable[size]; zurückzugeben.

Es ist normal, dass Sie es nie selbst nennen. Wenn Sie jedoch etwas wie Bundle.getParcelableArray() aufrufen, endet diese Methode indirekt.

    
flx 26.02.2014 10:09
quelle

Tags und Links