我在保存数组列表时遇到问题。我想在应用程序销毁或更改 Intent 或更改方向时保存我的数组列表:
public class AuditContainer implements Serializable {
private Paint mPaint;
private Path mPath;
private int x,y;
private String text;
boolean is_text;
首先我尝试保存在文件中,但是 Paint 类不是可序列化的类。 其次,我尝试使用 onSaveInstanceState(Bundle outState)/onRestoreInstanceState(Bundle savedInstanceState) 但我无法保存 Arraylist 第三,我尝试使用数据库,但没有任何类型的 Paint、Path ... 如果有人对我有建议,我会很高兴。
最佳答案
你有三个选择:
一个。修改 Paint
以实现 Serializable
.
B. 使用 transient
将字段标记为不用于序列化关键词:
private transient Paint mPaint;
C.为 Paint 编写您自己的可序列化包装器,以保留关键字段的可序列化副本,以及 delegates私有(private) transient Paint 的功能,并且可以在反序列化后重新初始化 Paint 实例。
关于java - 保存数组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18567120/