Android Guides | Samples

Android.OS.Parcelable Class

Interface for classes whose instances can be written to and restored from a Parcel.

See Also: Parcelable


public abstract class Parcelable


Interface for classes whose instances can be written to and restored from a Parcel. Classes implementing the Parcelable interface must also have a non-null static field called CREATOR of a type that implements the IParcelableCreator interface.

java Example

 public class MyParcelable implements Parcelable {
     private int mData;

     public int describeContents() {
         return 0;

     public void writeToParcel(Parcel out, int flags) {

     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();

A typical implementation of Parcelable is:

[Android Documentation]


Namespace: Android.OS
Assembly: Mono.Android (in Mono.Android.dll)
Assembly Versions:
Since: Added in API level 1

The members of Android.OS.Parcelable are listed below.

See Also: Object

Public Fields

ContentsFileDescriptorInt32 (1). Bit masks for use with Parcelable.describeContents(): each bit represents a kind of object considered to have potential special significance when marshalled.
ParcelableWriteReturnValueParcelableWriteFlags (1). Flag for use with .: the object being written is a return value, that is the result of a function such as "Parcelable someFunction()", "void someFunction(out Parcelable)", or "void someFunction(inout Parcelable)".