Activity之间传递类对象(二)
上一篇Activity之间传递类对象是实现Serializable接口传递对象,这篇是实现Parcelable接口传递对象。
?
传递的类
public class CustomeParcelable implements Parcelable {private String name;private String id;private int age;private String sex;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getId() {return id;}public void setId(String id) {this.id = id;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public static final Parcelable.Creator<CustomeParcelable> CREATOR = new Creator<CustomeParcelable>(){public CustomeParcelable createFromParcel(Parcel source) {// TODO Auto-generated method stubCustomeParcelable cus = new CustomeParcelable();cus.name = source.readString();cus.id = source.readString();cus.age = source.readInt();cus.sex = source.readString();return cus;}public CustomeParcelable[] newArray(int size) {// TODO Auto-generated method stubreturn new CustomeParcelable[size];}};public int describeContents() {// TODO Auto-generated method stubreturn 0;}public void writeToParcel(Parcel dest, int flags) {// TODO Auto-generated method stubdest.writeString(name);dest.writeString(id);dest.writeInt(age);dest.writeString(sex);}}?
发送部分
CustomeParcelable cc = new CustomeParcelable();cc.setAge(21);cc.setId("123456");cc.setName("mingkg21");cc.setSex("男"); Intent intent = new Intent(this, PersonInfo.class);intent.putExtra("PERSON_INFO", cc);startActivity(intent);?
接收部分
Intent intent = getIntent();CustomeParcelable cc = intent.getParcelableExtra("PERSON_INFO");setTextView(R.id.id, cc.getId());setTextView(R.id.name, cc.getName());setTextView(R.id.sex, cc.getSex());setTextView(R.id.age, String.valueOf(cc.getAge()));?