通过编辑器GUI编写XML

时间:2015-01-27 13:31:47

标签: xml unity3d unity3d-editor

我有一个包含以下节点的XML文件:

<Products>
   <Product name="Test 1">
        <title>Test1 Title</title>
        <content>Lorem ipsum....... </content>
        <facebook>
            <fb-picture>Here goes a link</fb-picture>
            <fb-caption>This is a caption</fb-caption>
           <fb-description>This is a description</fb-description>
        </facebook>
    </Product>
<Products>

现在我想从&#34;产品&#34;并通过EditorGUI填充所有innerTexts。 因为我会在这个XML中获得很多产品,并且我不想通过XML文件填充所有这些文本。

我有点失落,现在不知道从哪里开始。 我使用Unity4.6和C#。

希望有人能告诉我如何做到这一点。

由于

1 个答案:

答案 0 :(得分:1)

这是我的解决方案。我使用了以下示例: http://purdyjotut.blogspot.de/2013/10/unity-editor-tools-and-xml-to-save-time.html

首先,我创建了一个新课程,其中包含了我需要的所有字符串(或字段)

public class ProductItems {
    public string name = string.Empty;
    public string text = string.Empty;
    public string tags = string.Empty;
    public string pictureName = string.Empty;
    public string pictureURL = string.Empty;
    public string caption = string.Empty;
    public string description = string.Empty;
    public string url = string.Empty;
}

之后我从示例链接

创建了该类
public class ItemsEditor (){}

我将所有项目字段名称更改为我在ProductItems类中创建的名称。

此类将创建一个编辑器窗口,我可以在其中添加或删除项目到我的XML文件。

输出xml将如下所示

<?xml version="1.0" encoding="us-ascii"?>
<ArrayOfProductItems xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 <ProductItems>
   <name>This is a name</name>
   <text>This is a text</text>
   <tags>Test Tag1</tags>
   <pictureName>pictureName</pictureName>
   <pictureURL>www.pictureURL.com</pictureURL>
   <caption>Test caption</caption>
   <description>Test description</description>
   <url>www.test.de</url>
 </ProductItems>
</ArrayOfProductItems>

尽管如此,我还有一个问题,我还无法弄清楚如何在“ProductItems”属性中添加名称字段,如下所示:

<ProductItems name="Item 1">

也许别人确实知道这个?