webForumDet fria alternativet

duplicateMovieClip

Flash

1 svar · 208 visningar · startad av rille31

Medlem sedan okt. 2004186 inlägg
Frågan#1

Jag laddar in en XML fil som och skapar sedan filmklipp med duplicateMovieClip.
Detta gör jag i ett Mc som ligger inbäddat i ett mc som ocks ligger i ett mc.
förstamc.nästamc.härladdasXMLin

Det funkar när jag testar filmklippet där koden ligger men intenär jag testar huvudfilmklipet.
Vaf beror det på?
Måste XMLkoden eller duplicateMovieClipkoden ligga på huvudtidslinjen?

function processXML(success) {
	if (success) {
		xmlLoader._visible = false;
		var rootNode:XMLNode = tvXML.firstChild;
		for (i=0, j=15; i<rootNode.childNodes.length-1; i++, j += 15) {
			localVariable = rootNode.childNodes[i+1].firstChild.firstChild.nodeValue;
			buttonText = rootNode.childNodes[i+1].lastChild.firstChild.nodeValue;
			videoMain.duplicateMovieClip("videoMain"+i, i);
			_root["videoMain"+i]._y = videoMain._y+j;
			_root["videoMain"+i].nextVideo = localVariable;
			_root["videoMain"+i].videoBtn.btnText.text = buttonText;
		}
	} else {
		trace("error loading XML");
	}
}
Medlem sedan maj 2003750 inlägg
#2

Jag antar att koden ligger i en flash film som laddas in i en annan? Isåfall bör du fundera på en annan sökväg.

Du använder _root men den kommer att peka på huvudfilmens huvudtidslinje. Vad du bör göra är att lägga till en variabel där du sparar en referens till kopian.

Här är ett exempel, Förändringarna är markerade med fetstil:

function processXML(success) { 
    [b]var ref = null;[/b]
    if (success) { 
        xmlLoader._visible = false; 
        var rootNode:XMLNode = tvXML.firstChild; 
        for (i=0, j=15; i<rootNode.childNodes.length-1; i++, j += 15) { 
            localVariable = rootNode.childNodes[i+1].firstChild.firstChild.nodeValue; 
            buttonText = rootNode.childNodes[i+1].lastChild.firstChild.nodeValue; 
            [b]ref = [/b]videoMain.duplicateMovieClip("videoMain"+i, i); 
            [b]ref[/b]._y = videoMain._y+j; 
            [b]ref[/b].nextVideo = localVariable; 
            [b]ref[/b].videoBtn.btnText.text = buttonText; 
        } 
    } else { 
        trace("error loading XML"); 
    } 
}

/Mirandir

258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)