3

我想保存包含一些 UI 组件的应用程序状态,如图所示。

在此处输入图像描述

当用户离开编辑模式时,工作应该以某种形式保存,以便用户以后可以编辑。

我无法从中检索数据sharedObject

相反,现在我想使用IExternalization. 我如何使用它来节省用户工作?

4

1 回答 1

0

这个问题有一个 IExternalizable 用法的例子。

您有许多 UIComponents 后代,也许他们甚至共享一个父代。因此,您获取每个类并编写它们implements IExternalizable,并编写一个连贯writeExternalreadExternal方法对,只保存所需的属性(x,y,type,等等。比如说一个电阻,您将它的 x,y,type 保存为枚举或字符串,可能是旋转,仅此而已。当您执行readExternal实现时,您会按照编写它们的顺序读取所有值,然后根据您读取的值重构对象内的任何内容。对象外部的任何内容应该由它的父级恢复,它将一个一个地写入一组这些对象(电阻器,电感器,晶体管等),然后将addChild()它们读取。这是一个足够复杂的结构,但如果处理得当,它将起作用。

是的,所有这些都可以存储在 SharedObject 中,并使用其本机可用的方法。但请注意,您需要为registerClassAliasIExternalizable 实现中涉及的所有类调用一个方法。

于 2013-02-11T14:10:39.773 回答