|
|
|||||
Регистрация: Jul 2008
Адрес: USofA
Сообщений: 42
|
loadMovie как прелоудер для swf
я сделал проэкт во флеш и остался прелоудер, я сделал дополнительный swf, который подгружает главный (так как у меня атачятся мувики я не могу встроить прелоудер в основной проэкт)
в дополнительном прелоудере всего один mc (loading) и такой код : _root.loading.onEnterFrame=function() { _root.loadMovie("main.swf"); l=_root.getBytesLoaded(); t=_root.getBytesTotal(); this.txt = Math.floor(100*l/t)+"%"; } почему? клгда я пробывал загружать свф в мувик клип, то свф теряет свои свойства, теряет резину и прочее, ~спасибо |
|
|||||
Цитата:
|
|
|||||
Регистрация: Jul 2008
Адрес: USofA
Сообщений: 42
|
export in first frame отмечено, тогда прелоудер загрузится после мувиков и будет пустой экран а потом сразу с 40% начнет
если не отметить, то тогда они вобще не будут атачится должено же быть какоето простое решение |
|
|||||
1. создаёшь в swf с прелоудером пустой мувик как контейнер, в который загружается твой основной проект. вот это:
работать не будет, так как loadMovie работает только с целевым объектом. 2.а теперь AS: loadMovie("main.swf", container);// container - это мувик на сцене this.onEnterFrame=function() { var l = container.getBytesLoaded(); var t = container.getBytesTotal(); if(l == t){ // здесь функция, выполняемая по завершению загрузки, например this.txt._visible = 0; }else{ this.txt.text = Math.floor(100*l/t)+"%"; } } Последний раз редактировалось amexdesign; 27.11.2009 в 01:35. |
|
|||||
Регистрация: Jul 2008
Адрес: USofA
Сообщений: 42
|
когда гружу в контейнер то загружаемый теряет свои фунции,
тут по форуму полазил нашол _lockroot свойство, похоже это то что мне надо. сейчас попробую слепить что то |
|
|||||
поставь галочку Generate size report при паблише и посмотри результат что у тебя там в первом фрэйме грузится. Там сразу станет все понятно
|
|
|||||
Регистрация: Jan 2008
Сообщений: 87
|
а почему нельзя воспользоваться прослушивателем
var mcLoader:MovieClipLoader = new MovieClipLoader(); var listener:Object = new Object(); mcLoader.addListener(listener); listener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void { total = bytesTotal; loaded = bytesLoaded; percent = int ((loaded / total) * 100); //можно присвоить текстовому полю и будут показываться проценты загрузки if(total==loaded){ //тут будет всё выполняться, когда мувик загрузится } } mcLoader.loadClip("main.swf", container);//вместо container указать мувиклип куда будет грузится main.swf Последний раз редактировалось jony_e; 27.11.2009 в 17:31. |
|
|||||
хмм. а оно работать будет ?
слушатель вешается на mcLoader. что бы это заработало мне кажется нужно вместо: сделать так |
|
|||||
Регистрация: Jan 2008
Сообщений: 87
|
верно, просто не то поле скопировал
поправил код... Последний раз редактировалось jony_e; 27.11.2009 в 17:35. |
|
|||||
Регистрация: Jul 2008
Адрес: USofA
Сообщений: 42
|
когда локрут = тру то все в теории должно быть норм, но оно как то по китайски грузит и всегда не до 100%, пару муви клипов не будут загружены
ldr = контейнер _root.ldr._lockroot = true; var mcLoader:MovieClipLoader = new MovieClipLoader(); var listener:Object = {} mcLoader.addListener(listener); mcLoader.loadClip("main.swf",ldr); listener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number) { _root.loading.txt = Math.floor((bytesLoaded/bytesTotal)*100)+"%"; }; listener.onLoadComplete = function() { mcLoader.removeListener(listener); }; |
Часовой пояс GMT +4, время: 02:34. |
|
« Предыдущая тема | Следующая тема » |
|
|