我对flex和Action脚本完全不熟悉.. 我的Air应用程序中有一个List控件。当我安装应用程序时,我想在本地文件夹上自动创建一个文件,然后当我开始使用该应用程序时.i.e。开始在List控件中输入,退出应用程序后我希望保存在该文件中的数据,当我打开应用程序时,列表将从文件中加载。
我已经阅读了关于这个问题的几个讨论,但它们都只涉及textinputs而不是List控件..有人可以指导我如何做得最好,如果我必须使用的是XML,那么如何加载和使用XML回写到列表控件...
答案 0 :(得分:0)
这只是一个想法,我还没有尝试过:为什么不使用writeObject将ListBase数据对象保存到ByteArray,然后将其保存到二进制文件,甚至更好的EncryptedLocalStore?然后使用ByteArray readObject在应用程序加载时恢复它 - 不需要XML。
答案 1 :(得分:0)
我不太明白这个问题。您是否使用可编辑列表控件来更改列表中的数据?
如果将List控件的dataProvider绑定到ArrayCollection,您应该能够侦听ArrayCollection的CHANGE事件,并在此时将新数据写入文件。这是否有效可能取决于您在ArrayCollection中的数据类型。
另一个选择是收听itemEditEnd事件。见这里:
http://livedocs.adobe.com/flex/3/html/celleditor_7.html#194259
答案 2 :(得分:0)
“我只想要在应用程序退出时保存的内容,一旦再次启动,列表就会加载更新的数据。”
首先,Flash播放器在沙盒中运行SWF,其安全设置不允许本地文件系统访问。所以你将无法写入本地文件。 如果您希望应用程序保存某些内容,则需要考虑将数据发送到服务器并在应用程序启动时检索。