IParcelable 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
類別的介面,其實例可以從 寫入和還原 Parcel
。
[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
- 衍生
- 屬性
- 實作
備註
類別的介面,其實例可以從 寫入和還原 Parcel
。 實作可轉換介面的類別也必須具有稱為 實作 Parcelable.Creator
介面之類型的非 Null 公用靜態欄位 CREATOR
。
一般可轉送實作為:
<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<MyParcelable?> {
override fun createFromParcel(`in`: Parcel): MyParcelable? {
return MyParcelable(`in`)
}
override fun newArray(size: Int): Array<MyParcelable?> {
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<MyParcelable> CREATOR
= new Parcelable.Creator<MyParcelable>() {
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 ><>
的 android.os.Parcelable
JAVA 檔。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。
欄位
ContentsFileDescriptor |
與 搭配 |
屬性
Handle |
取得基礎 Android 物件的 JNI 值。 (繼承來源 IJavaObject) |
JniIdentityHashCode |
傳回包裝實例的 |
JniManagedPeerState |
受控對等的狀態。 (繼承來源 IJavaPeerable) |
JniPeerMembers |
成員存取和調用支援。 (繼承來源 IJavaPeerable) |
PeerReference |
傳 JniObjectReference 回已包裝 JAVA 物件實例的 。 (繼承來源 IJavaPeerable) |
方法
DescribeContents() |
描述這個可壓縮實例封送處理標記法中包含的特殊物件種類。 |
Disposed() |
在處置實例時呼叫。 (繼承來源 IJavaPeerable) |
DisposeUnlessReferenced() |
如果沒有這個實例的未完成參考,則呼叫 |
Finalized() |
實例完成時呼叫。 (繼承來源 IJavaPeerable) |
SetJniIdentityHashCode(Int32) |
設定 所 |
SetJniManagedPeerState(JniManagedPeerStates) |
類別的介面,其實例可以從 寫入和還原 |
SetPeerReference(JniObjectReference) |
設定 所 |
UnregisterFromRuntime() |
取消註冊此實例,讓執行時間不會從未來的 Java.Interop.JniRuntime+JniValueManager.PeekValue 調用傳回它。 (繼承來源 IJavaPeerable) |
WriteToParcel(Parcel, ParcelableWriteFlags) |
將這個 物件壓平合併至一個檔案。 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
類別的介面,其實例可以從 寫入和還原 |
GetJniTypeName(IJavaPeerable) |
類別的介面,其實例可以從 寫入和還原 |