1

次のノードを含む 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>

ここで、"Product" からコピーを作成し、EditorGUI を介してすべての innerText を埋めたいと思います。この XML で多くの製品を取得するため、これらすべてのテキストを XML ファイルで入力したくないからです。

私はちょっと迷っていて、どこから始めればいいのかわかりません。Unity4.6 と C# を使用しています。

誰かがこれを行う方法を教えてくれることを願っています。

ありがとう

4

1 に答える 1

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>

それでも、1 つ問題が残っています。次のように、「ProductItems」属性に名前フィールドを追加する方法をまだ理解できませんでした。

<ProductItems name="Item 1">

多分他の誰かがこれを知っていますか?

于 2015-02-03T10:29:43.837 に答える