MyParcelable.java
public class MyParcelable implements Parcelable {
private String mVal;
public MyParcelable(String val) {
mVal = val;
}
public static final Parcelable.Creator<MyParcelable> CREATOR =
new Parcelable.Creator<MyParcelable>() {
public MyParcelable createFromParcel(Parcel in) {
String s = in.readString();
return new MyParcelable(s);
}
public MyParcelable[] newArray(int size) {
return new MyParcelable[size];
}
};
public String getValue() {
return mVal;
}
public void writeToParcel(Parcel p) {
p.writeString(mVal);
}
public String toString() {
return "MyParcelable[val=" + mVal + "]";
}
}
SendParcelable.java
public class SendParcelable extends Activity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
Intent intent = new Intent(this, ReceiveParcelable.class);
Parcelable p = new MyParcelable("test");
intent.putExtra("myparcelable", p);
Log.i("ParcelDemo", "Sending Parcelable");
startActivity(intent);
}
}
ReceiveParcelable.java
public class ReceiveParcelable extends Activity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
Intent intent = getIntent();
Parcelable p = intent.getParcelableExtra("myparcelable");
Log.i("ParcelDemo", "Got Parcelable " + p);
if (p != null && p instanceof MyParcelable &&
((MyParcelable) p).getValue().equals("test")) {
Log.i("ParcelDemo", "Success!");
} else {
Log.i("ParcelDemo", "Failure!");
}
}
}
Надеюсь, что этопомогает!