![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Нужно загрузить файл logo.swf и размножить 4 раза на сцене. Делаю так:
var loader:Loader; var numOfItems:Number=4; loader=new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initListener); var urlRequest:URLRequest=new URLRequest("logo.swf"); loader.load(urlRequest); function initListener(e:Event):void { for (var i:Number=0; i<numOfItems; i++) { var myclip:MovieClip = new mymc(); myclip.addChild(loader.content); myclip.width=40+i; myclip.height=40+i; myclip.x=40+i; myclip.y=40+i; addChild(myclip); } } Логотип загружается, но отображается 1 раз. С простой картинкой получается, а в чем тут проблема не пойму. |
|
|||||
|
стервочка (я мужик)
|
один и тот же клип нельзя отобразить в несольких контэйнера. он у вас отображается только в последнем
|
|
|||||
|
по поводу присваивания координат логотипу, 40 плюс минус 4 не значительно.... может стоит умножать?? Может они ложатся друг на друга? И не пойму зачем ширину, высоту менять на пару пикселей....
|
|
|||||
|
подскажите что сделать пожалуйста
с другими координатами он тоже один. |
|
|||||
|
стервочка (я мужик)
|
склонировать содержание. либо через Loade.loadBytes, либо через Loader.loaderInfo.getDefinition. первый способ работает медленее и жрёт больше памяти
|
|
|||||
|
делала по книге Мука ActionScript 3.0 для Flash (с 871)
var loader:Loader; loader=new Loader(); var urlRequest:URLRequest=new URLRequest("logo.swf"); loader.load(urlRequest); loader.contentLoaderInfo.addEventListener(Event.INIT, initListener); function initListener(e:Event):void { var logoClassName:String=getQualifiedClassName(e.target.content); var appDomain:ApplicationDomain=e.target.content.loaderInfo.applicationDomain; var logoClass:Class=appDomain.getDefinition(logoClassName); var newlogo:Object = new LoadedClass(); addChild(newlogo); } ![]() на эту строку ругается 1118: Implicit coercion of a value with static type Object to a possibly unrelated type Class. видела еще на форуме такую констуркцию и пример с такой конструкцией к описанию AS 3.0. на сайте Adobe , но тоже не получается. Мне знаний конечно не хватает и опыта, но разобраться с размножением подгружаемого клипа для меня очень нужно. |
|
|||||
|
стервочка (я мужик)
|
а почему ему не ругаться? getDefinition возвращает Object. а Вы его пытаетесь присвоить переменной типа Class. в ошибки написано что он не умеет конвертировать один тип в другой. для исправления ошибки используется оператор as.
|
|
|||||
var loader:Loader; var numOfItems:Number=3; loader=new Loader(); var urlRequest:URLRequest=new URLRequest("logo.swf"); loader.load(urlRequest); loader.contentLoaderInfo.addEventListener(Event.INIT, initListener); function initListener(e:Event):void { var logoClassName:String=getQualifiedClassName(e.target.content); var appDomain:ApplicationDomain=e.target.content.loaderInfo.applicationDomain; var logoClass:Class=appDomain.getDefinition(logoClassName) as Class; var newlogo:Object = new LoadedClass(); addChild(newlogo); } теперь оно ругается на следующую строчку 1180: Call to a possibly undefined method LoadedClass. а у Мука вот что Цитата:
|
|
|||||
|
стервочка (я мужик)
|
откуда вы взяли переменную LoadedClass?
|
|
|||||
|
ой
var loader:Loader; loader=new Loader(); var urlRequest:URLRequest=new URLRequest("logo.swf"); loader.load(urlRequest); loader.contentLoaderInfo.addEventListener(Event.INIT, initListener); function initListener(e:Event):void { var logoClassName:String=getQualifiedClassName(e.target.content); var appDomain:ApplicationDomain=e.target.content.loaderInfo.applicationDomain; var logoClass:Class=appDomain.getDefinition(logoClassName) as Class; var newlogo:Object = new logoClass(); addChild(newlogo); } 1118: Implicit coercion of a value with static type Object to a possibly unrelated type flash.display:DisplayObject. Последний раз редактировалось iNils; 05.04.2009 в 18:16. |
![]() |
![]() |
Часовой пояс GMT +4, время: 12:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|