加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

从object创建xml

发布时间:2020-12-16 23:15:12 所属栏目:百科 来源:网络整理
导读:基本上我想在Flex中创建 XMLDesigner类的东西,使用哪个用户可以添加/编辑视图/仪表板的组件和属性. 我将视图结构存储在xml文件中.我在运行时解析该文件并显示视图. 如何将对象(具有属性和子对象)转换为xml节点(具有属性和元素)并将该xml添加到现有xml文件中.
基本上我想在Flex中创建 XMLDesigner类的东西,使用哪个用户可以添加/编辑视图/仪表板的组件和属性.
我将视图结构存储在xml文件中.我在运行时解析该文件并显示视图.
如何将对象(具有属性和子对象)转换为xml节点(具有属性和元素)并将该xml添加到现有xml文件中.所以,下次当我解析xml文件时,我将在我的视图/仪表板中获取该新组件.

例如,xml文件中组件的对象结构:

<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.它有很多功能,我发誓!

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;

你也是

FlexXBEngine.instance.serialize(目标)

结果就是

<MOck2Replacement attribute="true" id="5">
  <objectVersion>
    33
  </objectVersion>
</MOck2Replacement>

另一个令人敬畏的事情是你不必拥有一个对象的来源来装饰它.

有一个API可以处理它.使用这个AP,我成功地(序列化)了SolidColor和LinearGradient,我没有源它来装饰它.

查看General Description和Samples.这是一个one SWC install

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读