Android Intent 传递实体类到下一个 Activity
2023-12-25 14:34:15
要在 Android 中通过 Intent 传递实体类对象,首先需要确保实体类对象实现了 Serializable 或 Parcelable 接口。
一、实现 Serializable 接口:
public class MyObject implements Serializable {
private String name;
private int age;
// 构造方法和其他方法
}
然后,在发送方的代码中,创建一个 Intent 对象并调用?putExtra()
?方法来传递实体类对象:
Intent intent = new Intent(this, ReceiveActivity.class);
intent.putExtra("my_object", myObject);
startActivity(intent);
最后,在接收方的代码中,使用?getSerializableExtra()
?方法来获取实体类对象:
MyObject myObject = (MyObject) getIntent().getSerializableExtra("my_object");
二、实现 Parcelable 接口:
public class MyObject implements Parcelable {
private String name;
private int age;
// 构造方法和其他方法
protected MyObject(Parcel in) {
name = in.readString();
age = in.readInt();
}
public static final Creator<MyObject> CREATOR = new Creator<MyObject>() {
@Override
public MyObject createFromParcel(Parcel in) {
return new MyObject(in);
}
@Override
public MyObject[] newArray(int size) {
return new MyObject[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(name);
dest.writeInt(age);
}
}
然后,在发送方的代码中,创建一个 Intent 对象并调用?putExtra()
?方法来传递实体类对象:
Intent intent = new Intent(this, ReceiveActivity.class);
intent.putExtra("my_object", myObject);
startActivity(intent);
最后,在接收方的代码中,使用?getParcelableExtra()
?方法来获取实体类对象:
MyObject myObject = getIntent().getParcelableExtra("my_object");
?
文章来源:https://blog.csdn.net/wl724120268/article/details/135196329
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!