public interface Parcelable
Parcel. Classes implementing the Parcelable
interface must also have a static field called CREATOR, which
is an object implementing the Parcelable.Creator
interface.
A typical implementation of Parcelable is:
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();
}
}| Modifier and Type | Interface and Description |
|---|---|
static interface |
Parcelable.ClassLoaderCreator<T>
Specialization of
Parcelable.Creator that allows you to receive the
ClassLoader the object is being created in. |
static interface |
Parcelable.Creator<T>
Interface that must be implemented and provided as a public CREATOR
field that generates instances of your Parcelable class from a Parcel.
|
| Modifier and Type | Field and Description |
|---|---|
static int |
CONTENTS_FILE_DESCRIPTOR
Bit masks for use with
describeContents(): each bit represents a
kind of object considered to have potential special significance when
marshalled. |
static int |
PARCELABLE_WRITE_RETURN_VALUE
Flag for use with
writeToParcel(android.os.Parcel, int): 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)". |
| Modifier and Type | Method and Description |
|---|---|
int |
describeContents()
Describe the kinds of special objects contained in this Parcelable's
marshalled representation.
|
void |
writeToParcel(Parcel dest,
int flags)
Flatten this object in to a Parcel.
|
static final int PARCELABLE_WRITE_RETURN_VALUE
writeToParcel(android.os.Parcel, int): 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)". Some implementations
may want to release resources at this point.static final int CONTENTS_FILE_DESCRIPTOR
describeContents(): each bit represents a
kind of object considered to have potential special significance when
marshalled.int describeContents()
void writeToParcel(Parcel dest, int flags)
dest - The Parcel in which the object should be written.flags - Additional flags about how the object should be written.
May be 0 or PARCELABLE_WRITE_RETURN_VALUE.Copyright © 2016. All rights reserved.