从对象创建xml
基本上,我想在Flex中创建XMLDesigner之类的东西,用户可以使用它添加/编辑视图/仪表板的组件和属性。 我将视图结构存储在xml文件中。我在运行时解析了该文件并显示视图。 如何将对象(具有属性和子对象)转换为xml节点(具有属性和元素),并将该xml添加到现有xml文件中。以便下次解析xml文件时,我将在视图/仪表板中获取新组件 例如,xml文件中组件的对象结构:从对象创建xml,xml,apache-flex,actionscript-3,xml-serialization,Xml,Apache Flex,Actionscript 3,Xml Serialization,基本上,我想在Flex中创建XMLDesigner之类的东西,用户可以使用它添加/编辑视图/仪表板的组件和属性。 我将视图结构存储在xml文件中。我在运行时解析了该文件并显示视图。 如何将对象(具有属性和子对象)转换为xml节点(具有属性和元素),并将该xml添加到现有xml文件中。以便下次解析xml文件时,我将在视图/仪表板中获取新组件 例如,xml文件中组件的对象结构: <view id="productView" label="Products"> <panel id="
<view id="productView" label="Products">
<panel id="chartPanel" type="CHART" ChartType="Pie2D" title="Productwise Sales" x="215" y="80" width="425" height="240" showValues="0" >
</panel>
</view>
提前感谢。使用XML(反)序列化库
有很多,但有一件事,我用过,发现非常稳定的是。它有很多功能,我发誓
Flexxb是基于注释的,一旦掌握了窍门,就非常容易使用
以下是从主网站复制的示例
[XmlClass(alias="MOck2Replacement", idField="id")]
public class Mock3
{
[XmlAttribute]
public var id : Number = 3;
[XmlAttribute]
public var attribute : Boolean;
[XmlElement(alias="objectVersion")]
public var version : Number;
public function Mock3()
{
super();
}
}
您可以用注释装饰每个变量,并告诉它是什么类型的XML类型
然后创建对象
var target : Mock3 = new Mock3();
target.attribute = true;
target.id = 5;
target.version = 33;
你呢
flexbEngine.instance.serialize(目标)
结果是
<MOck2Replacement attribute="true" id="5">
<objectVersion>
33
</objectVersion>
</MOck2Replacement>
33
另一件令人敬畏的事情是,你不必有物品的来源来装饰它
有一个API可以处理这个问题。使用此AP,我成功地将SolidColor
和LinearGradient
反(序列化)了,因为我没有源代码来修饰它
签出和。我会用它来做这份工作
这里有一个更详细的说明。你好,Ranhiru,谢谢你的链接,它几乎与我需要的一样。首先,我们必须为每个组件定义类,并定义它们的属性和元素。是吗?如果我们想为组件添加新属性,例如,
SimpleXMLEncoder
和SimpleXMLEncoder
。