---恢复内容开始---
Activity之间通过Intent传递值,支持基本数据类型和String对象及它们的数组对象byte、byte[]、char、char[]、boolean、boolean[]、short、short[]、int、int[]、long、long[]、float、float[]、double、double[]、String、String[],还有实现Serializable、Parcelable接口的类对象。
传递类对象以前一直没搞懂怎么做,都是用静态引用。现在终于搞懂了,实现Serializable接口,废话少说,看代码。
public class CustomeClass implements Serializable{
private static final long serialVersionUID = -7060210544600464481L;
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;
} }
发送部分
CustomeClass cc = new CustomeClass();
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();
CustomeClass cc = CustomeClass)intent.getSerializableExtra("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()));