Serializable的xml文件部分如下
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Serializable类型"
android:onClick="OnStartActivitySerializableB"/>
新建一个对象类实现Serializable即可
public class Student implements Serializable{
private String name;
private String number;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
java文件处理 activityA 按钮处理
public void OnStartActivitySerializableB(View v) {
Intent intent = new Intent(this, OnStartActivityExtraBundleB.class);
intent.putExtra("TYPE", ConstantInfo.TYPE_RESERLIZED);
Student student = new Student();
student.setName("张三");
student.setNumber("123");
student.setSex("男");
intent.putExtra("student", student);
startActivity(intent);
}
activityB 接收处理主要部分
Student student = (Student) intent.getSerializableExtra("student");
mGetIdTxt.setText("姓名:" + student.getName() + " 学号:"
+ student.getNumber() + " 性别:" + student.getSex());
------------------------------------------------------------------------------------------------------
Parcelablexml文件基本同上下面看主要的事件处理
Java文件
其对象类主要实现Parcelable接口(其中内部属性自行添加)
public class UserInfo implements Parcelable{
@Override
public int describeContents() {
// TODO Auto-generated method stub
return 0;
}
//将写入Parcelable
@Override
public void writeToParcel(Parcel dest, int flags) {
// TODO Auto-generated method stub
dest.writeString(userName);
dest.writeString(password);
dest.writeString(sex);
}
/*
* public static final 必须添加,否则报错
* 只能用 CREATOR 命名
* */
public static final Parcelable.Creator<UserInfo> CREATOR = new Creator<UserInfo>() {
@Override
public UserInfo[] newArray(int size) {
// TODO Auto-generated method stub
return new UserInfo[size];
}
@Override
public UserInfo createFromParcel(Parcel source) {
// TODO Auto-generated method stub
String name = source.readString();
String password = source.readString();
String sex = source.readString();
UserInfo userInfo = new UserInfo();
userInfo.setUserName(name);
userInfo.setPassword(password);
userInfo.setSex(sex);
return userInfo;
}
};
}
activity 文件处理 activityA 部分处理
Intent intent = new Intent(this, OnStartActivityExtraBundleB.class);
intent.putExtra("TYPE", ConstantInfo.TYPE_PARCLABLE);
UserInfo userInfo = new UserInfo();
userInfo.setUserName("李四");
userInfo.setPassword("456");
userInfo.setSex("男");
intent.putExtra("userInfo", userInfo);
startActivity(intent);
activity B 部分处理
UserInfo userInfo = intent.getParcelableExtra("userInfo");
mGetIdTxt.setText("用户名:" + userInfo.getUserName() + " 密码:"
+ userInfo.getPassword() + " 性别:" + userInfo.getSex());