Хорошо, вот что я сейчас пытаюсь сделать. У меня есть класс под названием vdata.as, который принимает 2 параметра, которые являются строками, отправленными с основного этапа. Параметр 1 - это место для файла XML, который мне нужно открыть и прочитать. Второй параметр - это имя видео, которое я сейчас ищу.AS3 вождение меня орехи
Теперь я могу получить данные из XML-файла и отобразить его без каких-либо проблем, если он вызван из моего класса, но когда я пытаюсь получить доступ к любому из них со сцены, я получаю неопределенный.
import flash.net.*;
import flash.display.*;
import flash.events.*;
public class videoData
{
private var mName:String;
private var mLink:String;
private var mCategory:String;
public static var elementArray:Array;
// Constructor
public function videoData(xmlPath:String,xmlVidSrc:String,pMC:MovieClip)
{
pXmlPath = xmlPath;
pXmlVidSrc = xmlVidSrc;
xmlloader = new URLLoader();
elementArray = new Array();
}
public function getXML()
{
XMLData();
}
private function XMLData()
{
xmlloader.load(new URLRequest(pXmlPath));
xmlloader.addEventListener(Event.COMPLETE,parseXMLData);
}
private function parseXMLData():void
{
var x:XML = new XML(xmlloader.data);
Init(x);
}
private function Init(m:XML):*
{
var i:Number;
for(i=0; i<m.videos.videoname.length(); i++)
{
if(m.videos.videoname[i][email protected] == pXmlVidSrc)
{
videoData.elementArray.push(m.videos.videoname[i][email protected]);
videoData.elementArray.push(m.videos.videoname[i][email protected]);
videoData.elementArray.push(m.videos.videoname[i][email protected]);
}
}
}
}
Когда я вызвать его из основной стадии код выглядит следующим образом.
var xData: videoData = new videoData (xmlPath, vidSrc, this); xData.getXML();
тогда, когда я пытаюсь получить доступ к любым элементам videoData.elementArray, они появляются неопределенно ... Я просто ударил головой по моему столу, пытаясь понять это, любая помощь будет замечательной.
Спасибо. Извините, что я боюсь, но могу ли я привести пример того, что вы подразумеваете под «добавлением логического состояния для сцены». Думаю, у меня есть идея, но я просто хочу убедиться. И ни один элементArray не должен быть правдой, я просто удалил статический текст из этого. – 2Alpha
спасибо, что получил. – 2Alpha
сделал это трюк? – McAden