IParcelable Schnittstelle

Definition

Schnittstelle für Klassen, deren Instanzen in ein und 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 ein und Parcelwiederhergestellt werden können. Klassen, die die Paketierbare Schnittstelle implementieren, müssen auch ein öffentliches statisches Nicht-Null-Feld CREATOR aufweisen, das einen Typ aufruft, der die Parcelable.Creator Schnittstelle implementiert.

Eine typische Implementierung von Paketable 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><><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 auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Felder

Name Beschreibung
ContentsFileDescriptor

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

Eigenschaften

Name Beschreibung
Handle

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

(Geerbt von IJavaObject)
JniIdentityHashCode

Gibt den Wert java.lang.System.identityHashCode() für die umbrochene Instanz zurück.

(Geerbt von IJavaPeerable)
JniManagedPeerState

Status des verwalteten Peers.

(Geerbt von IJavaPeerable)
JniPeerMembers

Mitgliedszugriff und Aufrufunterstützung.

(Geerbt von IJavaPeerable)
PeerReference

Gibt eine JniObjectReference der umbrochenen Java Objektinstanz zurück.

(Geerbt von IJavaPeerable)

Methoden

Name Beschreibung
DescribeContents()

Beschreiben Sie die Arten spezieller Objekte, die in der Marshall-Darstellung dieser Paketable-Instanz enthalten sind.

Disposed()

Wird aufgerufen, wenn die Instanz verworfen wurde.

(Geerbt von IJavaPeerable)
DisposeUnlessReferenced()

Wenn keine offenen Verweise auf diese Instanz vorhanden sind, wird nichts aufgerufen Dispose(). Andernfalls wird nichts ausgeführt.

(Geerbt von IJavaPeerable)
Finalized()

Wird aufgerufen, wenn die Instanz abgeschlossen wurde.

(Geerbt von IJavaPeerable)
SetJniIdentityHashCode(Int32)

Legen Sie den von JniIdentityHashCode.

(Geerbt von IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

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

(Geerbt von IJavaPeerable)
SetPeerReference(JniObjectReference)

Legen Sie den von PeerReference.

(Geerbt von IJavaPeerable)
UnregisterFromRuntime()

Heben Sie die Registrierung dieser Instanz auf, damit die Laufzeit sie nicht aus zukünftigen Java.Interop.JniRuntime+JniValueManager.PeekValue Aufrufen zurückgibt.

(Geerbt von IJavaPeerable)
WriteToParcel(Parcel, ParcelableWriteFlags)

Flachen Sie dieses Objekt in ein Paket.

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

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

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: