Freigeben über


IParcelable Schnittstelle

Definition

Schnittstelle für Klassen, deren Instanzen in geschrieben und aus einem Parcelwiederhergestellt werden können.

[Android.Runtime.Register("android/os/Parcelable", "", "Android.OS.IParcelableInvoker")]
public interface IParcelable : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/os/Parcelable", "", "Android.OS.IParcelableInvoker")>]
type IParcelable = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Abgeleitet
Attribute
Implementiert

Hinweise

Schnittstelle für Klassen, deren Instanzen in geschrieben und aus einem Parcelwiederhergestellt werden können. Klassen, die die Parcelable-Schnittstelle implementieren, müssen auch über ein öffentliches statisches Feld ungleich NULL verfügen, das von einem Typ aufgerufen wird CREATOR , der die Parcelable.Creator Schnittstelle implementiert.

Eine typische Implementierung von Parcelable ist:

<div><div class="ds-selector-tabs"><section><h3 id="kotlin">Kotlin</h3>

class MyParcelable private constructor(`in`: Parcel) : Parcelable {
                private val mData: Int = `in`.readInt()

                override fun describeContents(): Int {
                    return 0
                }

                override fun writeToParcel(out: Parcel, flags: Int) {
                    out.writeInt(mData)
                }

                companion object CREATOR: Parcelable.Creator&lt;MyParcelable?&gt; {
                    override fun createFromParcel(`in`: Parcel): MyParcelable? {
                        return MyParcelable(`in`)
                    }

                    override fun newArray(size: Int): Array&lt;MyParcelable?&gt; {
                        return arrayOfNulls(size)
                    }
                }
            }

</section><section><h3 id="java"Java</>h3>

public class MyParcelable implements Parcelable {
                private int mData;

                public int describeContents() {
                    return 0;
                }

                public void writeToParcel(Parcel out, int flags) {
                    out.writeInt(mData);
                }

                public static final Parcelable.Creator&lt;MyParcelable&gt; CREATOR
                        = new Parcelable.Creator&lt;MyParcelable&gt;() {
                    public MyParcelable createFromParcel(Parcel in) {
                        return new MyParcelable(in);
                    }

                    public MyParcelable[] newArray(int size) {
                        return new MyParcelable[size];
                    }
                };

                private MyParcelable(Parcel in) {
                    mData = in.readInt();
                }
            }

</section></div></div>

Java-Dokumentation für android.os.Parcelable.

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.

Felder

ContentsFileDescriptor

Deskriptorbit, das mit #describeContents()verwendet wird, gibt an, dass die vereinfachte Darstellung des Parcelable-Objekts einen Dateideskriptor enthält.

Eigenschaften

Handle

Ruft den JNI-Wert des zugrunde liegenden Android-Objekts ab.

(Geerbt von IJavaObject)
JniIdentityHashCode

Gibt den Wert von java.lang.System.identityHashCode() für die umschlossene instance zurück.

(Geerbt von IJavaPeerable)
JniManagedPeerState

Status des verwalteten Peers.

(Geerbt von IJavaPeerable)
JniPeerMembers

Unterstützung für Zugriff und Aufruf von Mitgliedern.

(Geerbt von IJavaPeerable)
PeerReference

Gibt einen JniObjectReference des umschlossenen Java-Objekts instance zurück.

(Geerbt von IJavaPeerable)

Methoden

DescribeContents()

Beschreiben Sie die Arten von speziellen Objekten, die in der gemarshallten Darstellung dieses Parcelable-instance enthalten sind.

Disposed()

Wird aufgerufen, wenn die instance gelöscht wurde.

(Geerbt von IJavaPeerable)
DisposeUnlessReferenced()

Wenn keine ausstehenden Verweise auf diese instance vorhanden sind, ruft aufDispose(). Andernfalls wird nichts ausgeführt.

(Geerbt von IJavaPeerable)
Finalized()

Wird aufgerufen, wenn die instance abgeschlossen wurde.

(Geerbt von IJavaPeerable)
SetJniIdentityHashCode(Int32)

Legen Sie den von JniIdentityHashCodezurückgegebenen Wert fest.

(Geerbt von IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Schnittstelle für Klassen, deren Instanzen in geschrieben und aus einem Parcelwiederhergestellt werden können.

(Geerbt von IJavaPeerable)
SetPeerReference(JniObjectReference)

Legen Sie den von PeerReferencezurückgegebenen Wert fest.

(Geerbt von IJavaPeerable)
UnregisterFromRuntime()

Heben Sie die Registrierung dieses instance auf, damit die Laufzeit sie nicht von zukünftigen Java.Interop.JniRuntime+JniValueManager.PeekValue Aufrufen zurückgibt.

(Geerbt von IJavaPeerable)
WriteToParcel(Parcel, ParcelableWriteFlags)

Flachen Sie dieses Objekt in ein Parcel-Objekt ein.

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine Typkonvertierung mit Überprüfung der Android-Laufzeit aus.

JavaCast<TResult>(IJavaObject)

Schnittstelle für Klassen, deren Instanzen in geschrieben und aus einem Parcelwiederhergestellt werden können.

GetJniTypeName(IJavaPeerable)

Schnittstelle für Klassen, deren Instanzen in geschrieben und aus einem Parcelwiederhergestellt werden können.

Gilt für: