0

私はプログラミングが初めてで、このスクリプトを作成しています。入力に基づいて XML ファイルを読み取る関数を作成します。この問題に遭遇しましたが、「XMLtext」という名前の変数にアクセスできません。それは公開されています。誰かが私が間違っていることを教えて説明してもらえますか。私はさまざまなことを試しました。

using UnityEngine;
using System.Collections.Generic;
using System.Xml.Linq;
using System.Linq;
using System.Collections;

public class Data : MonoBehaviour {
    public TextAsset XMLtext;

    void Main () {

    }

    public static string XMLread (params string[] no) {
        var XMLfile = XDocument.Parse ();
        var a = Data.XMLfile.Element ("data");

        for (int i = 0; no[i] == null; i++) {

        }
    }
}
4

2 に答える 2

0

問題は、XMLtextフィールドが のインスタンスに属しているのDataに対し、XMLreadメソッドはstaticであるため、クラスに属していることDataです。常に のインスタンスにいるように、 staticfromを削除したいだけかもしれません。XMLreadData

于 2013-08-16T20:34:50.730 に答える
0

問題は、XMLtext フィールドを所有するクラス Data がインスタンス クラスであることです。メソッド XMLread は静的です。つまり、Data のすべてのインスタンスで共有されます。この問題を解決するには、XMLText を static にするか、static キーワードを削除して XMlread をインスタンス メソッドにします。

于 2013-08-16T20:26:18.197 に答える