Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 文本动态变化取决于帧编号_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 文本动态变化取决于帧编号

Actionscript 3 文本动态变化取决于帧编号,actionscript-3,flash,Actionscript 3,Flash,我有一个包含100多个文本条目的xml文件和一个动态文本字段。我想根据帧号更改文本。这是我的非工作代码: var myXML5: XML = new XML(); var XML_URL5: String = "assets/bulles.xml"; var myXMLURL5: URLRequest = new URLRequest(XML_URL5); var myLoader5: URLLoader = new URLLoader(myXMLURL5); myLoader5.addEven

我有一个包含100多个文本条目的xml文件和一个动态文本字段。我想根据帧号更改文本。这是我的非工作代码:

var myXML5: XML = new XML();
var XML_URL5: String = "assets/bulles.xml";
var myXMLURL5: URLRequest = new URLRequest(XML_URL5);
var myLoader5: URLLoader = new URLLoader(myXMLURL5);
myLoader5.addEventListener("complete", xmlLoaded5);
var list5: Number = 0;

function xmlLoaded5(event: Event): void {
myXML5 = XML(myLoader5.data);
}

function fnPeople5(peopleList5: XML): void {
bulles.text = peopleList5.bullestext.bulle.text()[list5];
}


function bulles2(e: Event): void {
var i5: int = france_map.currentFrame();
list5 = i5;
fnPeople5(myXML5);
}
我希望有人能帮忙:
杰里尔

这会给你一个主意。假设您的xml是这样的

文本1A text2b text3c text4d 文本5e

然后你可以这样做你的代码

var myXML5: XML = new XML();
var XML_URL5: String = "assets/bulles.xml";
var myXMLURL5: URLRequest = new URLRequest(XML_URL5);
var myLoader5: URLLoader = new URLLoader(myXMLURL5);
myLoader5.addEventListener("complete", xmlLoaded5);
var list5: Number = 0;

function xmlLoaded5(event: Event): void 
{
    trace ("XML loaded complete");
    myXML5 = XML(myLoader5.data);
    //trace (myXML5); ///show xml contents

    //fnPeople5(myXML5); 
    france_map.gotoAndStop(3); //for test (shows xml entry [3] later on)
    bulles2();
}

//testing without event (click event?)
//function bulles2(e: Event): void 
function bulles2(): void 
{
    var i5: int = france_map.currentFrame;   //.currentFrame();
    list5 = i5 - 1; //frame [1] is equal to xml entry [0] so we minus by 1
    trace ("list5 : " + list5);
    fnPeople5(myXML5);
}

function fnPeople5(peopleList5: XML): void 
{
    //testing traces
    trace(peopleList5.bullestext[0].bulle);
    trace(peopleList5.bullestext[4].bulle);

    //show entry (example: entry 3) 
    bulles.text = peopleList5.bullestext[list5].bulle;
}
我没有为测试设置鼠标/键盘事件,但不用担心,您之前的设置没有问题,因此您仍然可以使用函数bulles2e:event:void和您自己的完整代码。另外,因为XML从零开始计数,而帧计数从一开始,所以我们知道每个XML条目等于帧编号减去一


如果文本未显示在textField中,但在fnPeople5peopleList5:XML:void中跟踪正常,请尝试嵌入字体。检查此链接:

您能将xml结构添加到描述中吗?是否有错误?痕迹的结果?值得注意的是,fnPeople5bejrut:text text2中的tracepeopleList5.bullestext.bulle.text[list5]我是一个初学者,所以我不知道它是否正确,但它在另一个迷你应用程序i中工作made@MartonPallagi没有错误,应用程序的其余部分工作正常,但文本字段中没有显示任何文本。我已经在fnPeople5中添加了跟踪部分,但没有结果。我尝试了您的代码,我将xml改编为您建议的结构,出现了以下错误:TypeError:error 1090:xml解析器失败:元素格式错误。在flash.events::EventDispatcher/dispatchEventFunction at flash.events::EventDispatcher/dispatchEvent at flash.net::URLLoader/OnComplete在flash.events::EventDispatcher/dispatchEvent at flash.net::URLLoader/OnComplete第994帧上没有任何内容,但我可能知道它为什么出错。我的时间线是一个真正的时间线,一帧=一年。它开始于公元前3000年,结束于公元2014年。帧1=1bc,帧3000=3000bc,帧3001=1ad。第5014帧=2014ad。应用程序的这一部分不是从公元前3000年开始,而是从公元前60年开始,所以第61帧到第3000帧是空的。在我的xml中,前60帧对应于一个条目,但第61到5014帧是空的。我正在寻找一种方法来跳过xml文件中的条目61到3000。丢失的条目可能是出现此错误的原因?无论如何,非常感谢您给出了完整而清晰的答案。[france_fla.MainTimeline::frame1:994]表示错误来自frame1代码&由第994行引起。我怀疑是你在名字里留了个空格?例如:格式不正确,但可以,甚至可以。内容TeX1A可以有空格,虽然TE XT 1 A很好,只是部分对空间有敏感。PS:跳过条目考虑在最后一个函数中的//测试痕迹代码。它检查xml中的第1[0]项和第5[4]项,因此已跳过第2、3和4项。这就是如何跳过你不想要的指数位置的一般思路。。不要使用它们。