我序列化了一个扩展LinearLayout的类,如下面的代码片段所示。在反序列化时,我得到了上述异常。与在this链接中一样,不可能序列化ImageView(对于所有其他视图,我猜也是如此)。那么,有没有替代方案或我必须去SQLite数据库本身?建议或线索表示赞赏。
public class MyClass extends LinearLayout implements java.io.Serializable {
private static final long serialVersionUID = 1L;
private String mThemeImageName;
private ArrayList<STCharacter> mCharacterList;
private String mStoryText;
private int mSceneNumber;
private boolean mIsSceneHasCharacters;
public STScene(Context context) {
super(context);
}
public STScene(Context context, AttributeSet attrs) {
super(context, attrs);
}
//getters and setters below
答案 0 :(得分:1)
我认为这里的问题是您尝试序列化/反序列化复杂类,而不是使用“简单”数据类作为LinearLayout中的字段。
因此,引入一个数据持有者(类),您可以序列化/反序列化(并单独测试),并将其作为线性布局中的属性添加。