2015-10-20 26 views
0

我想加載XML文件來生成我的遊戲級別,但在iPhone(或Android)上它會崩潰,但在編輯器上它工作正常。如何使用Unity在iPhone上加載XML文件?

這裏是我嘗試加載我的XML:

XmlDocument xml = new XmlDocument(); 
xml.Load("Assets/XML/level1.xml"); 
level_root_node = xml.DocumentElement; 

請人已經解決了類似的問題?我試圖把我的XML放到「Assets/Resources/XML/level1.xml」中,但效果並不理想。

回答

1

它失敗的原因是在Android上,資源位於APK文件中,無法像您嘗試的那樣直接訪問。

http://docs.unity3d.com/Manual/LoadingResourcesatRuntime.html

您可以使用Resources.Load(路徑)獨立於平臺的方式來訪問的資源。

使用Resources.Load()來加載XML的資產,將其轉換爲字符串,並將其傳遞到XmlDocument的解析:

TextAsset textAsset = Resources.Load ("XML/level1.xml") as TextAsset; 
xml.LoadXml(textAsset.text); 
level_root_node = xml.DocumentElement; 
+1

太感謝你了!它解決了我的問題,但爲了一點點精確,您不必將文件格式放在Resources.Load()中,我使用它:TextAsset textAsset = Resources.Load(「XML/level1」)作爲TextAsset; – flow969