0
我想要什麼? 將我的項目保存在使用Air Application創建的編輯器中如何將對象保存到文件(AS3/Air)
什麼是保存? 1 Object - > Type ArrayCollection - > Contains - >自己類的對象...
我的第一次嘗試是什麼?
var stream :FileStream = new FileStream();
stream.writeObject(myArrayCollection);
問題是什麼? myArrayCollection內的物體得到這個結構:
public class MyClass1
{
public var title:String;
public var description:String;
public var kindOf:String = "...";
public var thumbnail:String;
public var children:ArrayCollection
...}
每個公共變種被保存在FileStream ....工作正常 的ArrayCollection是從該類對象的孩子裏面:
public class MyClass2 extends XMLDocument implements IExternalizable
{
public const kindOf:String = "Seite";
[Bindable]
public var title:String;
public var contenBox:OwnClass; //extended spark Group
public function get childrens():ArrayCollection
{
var childs: ArrayCollection = new ArrayCollection();
var i:int = 0;
while(i > (contenBox.container as spark.components.Group).numElements)
{
childs.addItem((contenBox.container as spark.components.Group).getElementAt(i));
i--;
}
return childs;
}
public function readExternal(input:IDataInput):void
{
trace("hello i'am reading");
}
public function writeExternal(output:IDataOutput):void
{
trace("hello i'am writing");
output.writeObject(children);
}
現在問題... fileStream包含我的MyClass2對象與變量「標題」,但沒有子ArrayCollection ...控制檯不顯示痕跡: -/
很確定我記得在某個地方讀過,你不能在複雜的數據類型上做到這一點。 –