Convert XML node to MovieClip

I have an XML document that I would like to use to display MovieClips in my .fla:

<linkedMovieClip>TestClip</linkedMovieClip>

In my .fla, I created the TestClip symbol and highlighted Linkage> Export for Actionscript and named it TestClip.

My code in my Document class is tracking xml:

var t:*= getDefinitionByName(String(slideItem.linkedMovieClip)) as Class;
var linked:MovieClip = new t();
trace("linked is..."+ linked); // outputs [Object TestClip];

However, when compiling, I get error message # 1065.

ReferenceError: Error #1065: Variable  is not defined.
    at global/flash.utils::getDefinitionByName()

I searched around and many recommended sites included the following import data:

import flash.utils.getDefinitionByName;
import TestClip;

And I included the following dummy variable:

public var _dummyClip:TestClip;

However, I still get the error message. When I check the debugger for this line:

var t:*= getDefinitionByName(String(slideItem.linkedMovieClip)) as Class;

Can anyone advise?

+3
source share
2 answers

. TestClip , , SWF. , TestClip

var _dummyClip:TestClip = new TestClip();
trace(flash.getQualifiedClassName(_dummyClip));//what does it trace?
+1

.

XML :

<items>
<item><linkedMovieClip>TestClip</linkedMovieClip></item>
<item><linkedMovieClip>TestClip</linkedMovieClip></item>
<item><linkedMovieClip>TestClip</linkedMovieClip></item>
<item></item>
<item><linkedMovieClip>TestClip</linkedMovieClip></item>
<item></item>
</items>

. , - .

for each (var item:XML in itemList) XML(), , node, ( node, "linkedMovieClip".

if node, :

 if (xmlListname.linkedMovieClip != undefined) {

         trace(String(xmlListname.linkedMovieClip));
  var c:* = getDefinitionByName(String(xmlListname.linkedMovieClip)) as Class;
         var mc:MovieClip = new c();
  trace(mc);
 }
+1

Source: https://habr.com/ru/post/1729146/


All Articles