我正在尝试从一个 Activity
发送我的 customer 类的对象并将其显示在另一个 Activity
中。
客户类的代码:
public class Customer {
private String firstName, lastName, address;
int age;
public Customer(String fname, String lname, int age, String address) {
firstName = fname;
lastName = lname;
age = age;
address = address;
}
public String printValues() {
String data = null;
data = "First Name :" + firstName + " Last Name :" + lastName
+ " Age : " + age + " Address : " + address;
return data;
}
}
我想将它的对象从一个 Activity
发送到另一个,然后在另一个 Activity
上显示数据。
我怎样才能做到这一点?
最佳答案
一种选择可能是让您的自定义类实现 Serializable
接口(interface),然后您可以使用 putExtra(Serializable..)
变体在 Intent extra 中传递对象实例Intent#putExtra()
方法。
实际代码:
在您的自定义模型/对象类中:
public class YourClass implements Serializable {
在使用自定义模型/类的其他类:
//To pass:
intent.putExtra("KEY_NAME", myObject);
myObject 的类型为“YourClass”。 然后从另一个 Activity 中检索,使用 getSerializableExtra 使用相同的键名获取对象。并且需要对 YourClass 进行类型转换:
// To retrieve object in second Activity
myObject = (YourClass) getIntent().getSerializableExtra("KEY_NAME");
注意:确保您的主自定义类的每个嵌套类都实现了 Serializable 接口(interface),以避免任何序列化异常。例如:
class MainClass implements Serializable {
public MainClass() {}
public static class ChildClass implements Serializable {
public ChildClass() {}
}
}
关于java - 如何在Android上将对象从一个 Activity 传递到另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2736389/