直接上代碼:注釋都寫的很清楚了。
public class Entry implements Parcelable{public int userID;public String username;public boolean isMale;public Book book;//序列化對(duì)象可以嵌套序列化對(duì)象,前提是2個(gè)類的對(duì)象都被序列號(hào)過//幾乎所有情況下都返回0,可以不管@Overridepublic int describeContents() {return 0;}//序列化對(duì)象,將對(duì)象寫到序列號(hào)數(shù)據(jù)結(jié)構(gòu)中//flags:大多數(shù)情況為0@Overridepublic void writeToParcel(Parcel out, int flags) {out.writeInt(userID);out.writeString(username);out.writeInt(isMale ? 1:0);out.writeParcelable(book, 0);// out.writeList(list);也可以序列號(hào)list和Map,前提是list和Map里面的數(shù)據(jù)都是可序列號(hào)的// out.writeMap(Map);}public Entry(int userID,String username,boolean isMale) {this.userID = userID;this.username = username;this.isMale = isMale;}//反序列化public static final Parcelable.Creator<Entry> CREATOR = new Creator<Entry>() {//創(chuàng)建指定長(zhǎng)度的原始對(duì)象數(shù)組@Overridepublic Entry[] newArray(int size) {// TODO Auto-generated method stubreturn new Entry[size];}//從序列號(hào)過后的對(duì)象中創(chuàng)建原始對(duì)象@Overridepublic Entry createFromParcel(Parcel source) {// TODO Auto-generated method stubreturn new Entry(source);}};//從序列號(hào)后的對(duì)象中創(chuàng)建原始對(duì)象private Entry(Parcel in){userID = in.readInt();username = in.readString();isMale = in.readInt() == 1;in.readParcelable(Thread.currentThread().getContextClassLoader());}}以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選