Просмотр полной версии : Проблемы с прелоадером
Werewolfe
13.07.2007, 18:00
Есть такой код:onClipEvent (load) { //событие - загрузка клипа
b = _root.getBytesTotal(); // В переменную b записываем сколько весит наш мув.
}
onClipEvent (enterFrame){ // событие - открытие фрэйма
l = _root.getBytesLoaded(); // в переменную l запихиваем сколько загружено байт
p = l/b*100;// в p пихаем кол-во загруженных байт в процентах
text=Math.floor(p);// округляем значение процентов, и отоброжаем его в текстовом поле
text=text+"%";// добовляем значёк процентов
if(l >= b){// теперь проверяем если загруженных байт больше или равно общему числу
this.gotoAndPlay(2)//то переходим на следующий кадр.
}
}, но проблема в том что флешка не вся загружается а после того как прошло 30-40% начинает играть то что загрузилось и дальнейшая загрузка прерывается. 2.Загрузку начинает показывать ~ с 17%
GreatRash
13.07.2007, 19:46
У меня такая же проблема была, решил ее, цепанув выше приведенный код к клипу-прелоадеру, а не к кадру...и тут же все заработало
Werewolfe
13.07.2007, 19:49
У меня код в клипе прелоадера
Посмотри, что у тебя грузится в первом кадре... и экспортируются ли именно в него классы...
вот, была подобная беда
http://www.flasher.ru/forum/showthread.php?t=98228
Что такое хорошо?
13.07.2007, 22:15
но проблема в том что флешка не вся загружается а после того как прошло 30-40% начинает играть то что загрузилось и дальнейшая загрузка прерывается. 2.Загрузку начинает показывать ~ с 17%
Видимо аттачатся у тебя звуки (или еще что-то) в первый кадр твоего мувика. И тут уж с древним подходом в виде onClipEvent будет справится сложнее. Проще и правильнее использовать МувиКлипЛодер
2Что такое хорошо?
даже на сайте колыбели-Adobe не все начинает грузится с нулевого процента
2Werewolfe поясните ответ, ваша флешка локально в тесте грузится так или он-лайн ?
Werewolfe
14.07.2007, 10:34
В тесте через WebSpeed Simulator. Через денвер не отследить вообще
Причем если под onClipEvent посмотреть трасе то все впорядке, а по if(l>=b) поставить трасе то он не отображается. Как пользоваться MovieClipLoader, в словаре написано что он подгружает файлы с относительных или абсолютных путей как его заставить загружать флешку в которой он прописан?
P.S. Он-лайн таже беда 30-40%, но если нажать перемотку назад он загружается до конца с того момента где оборвался
"Generate size report" что показывает ?
2Werewolfe что вам мешает сделать внешний прелоадер ?
гдето так =)
stop();
var tf:MovieClip = createEmptyMovieClip(name, 1);
with (tf) {
createTextField("my_txt", 1, 170, 100, 100, 100);
my_txt.multiline = true;
my_txt.wordWrap = true;
my_txt.selectable = false;
var my_fmt:TextFormat = new TextFormat();
my_fmt.size = 60;
my_fmt.font = "Impact";
my_fmt.color = 0x000099;
}
////////////////////////////////////////////
var mclListener:Object = new Object();
mclListener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
var per:Number = int(bytesLoaded/bytesTotal*100);
tf.my_txt.text = per;
tf.my_txt.setTextFormat(my_fmt);
};
////////////////////////////////////////////
mclListener.onLoadComplete = function(target:MovieClip) {
tf.removeMovieClip();
};
createEmptyMovieClip("mc", 2);
var mcl:MovieClipLoader = new MovieClipLoader();
mcl.addListener(mclListener);
mcl.loadClip("meny.swf", mc);
Werewolfe
14.07.2007, 22:03
Внешний мне не хочится, у меня он готовый есть, спасибо я уже разобрался сделал другой, то что есть ни есть гуд признаюсь, пошел другим путем. :)
Werewolfe
16.07.2007, 15:57
Спрелоадером все ясно, но как быть с загрузкой начинает показывать с 20% на первый кадр ни чего не аттачится все на втором
Вы используете аттач ?
если прелоадер внутрений то ничего удивительного, при внутренем прелоадере забутьте про аттач
я же вам говорил внешний нужен прелоадер но и там подводных камней хватает если вы ссылаетесь где небудь в своем коде на _root
Werewolfe
16.07.2007, 21:11
Как быть звуки на тайм лайн ложить?
да
первый кадр прелоадер , второй кадр и последующие содержит в своем тайм - лайне все что у вас в библиотеке с этим и работаете .
если аттач дорог то делаете внешний прелоадер, это флешка такая которая в себя подгружает вашу работу, так практичней
я например изпользую только внешние прелоадеры, иначе мне бы было стыдно говорить про централизацию кода разбрасывая все по кадрам, но как сказал мой очень умный друг делай как умеешь
Werewolfe
17.07.2007, 00:06
Не хочится мне внешний, а эта проблема не решаема другими способами?
Спрелоадером все ясно, но как быть с загрузкой начинает показывать с 20% на первый кадр ни чего не аттачится все на втором
Проверьте куда грузяться классы и шрифты.
Werewolfe
17.07.2007, 00:29
А как это можно сделать?
1. В Publish settings Включить Generate size report.
2. Если во втором и далее кадрах использутся динамические текстовые поля с embed, а в первом кадре есть статичное текстовое поле с таким же шрифтом всего с 1 символом, то весь шрифт будет загружен в первый кадр. Поэтому надо изменить шрифт для первого кадра или сделать из него shape
Werewolfe
17.07.2007, 09:53
В первом кадре только прелоадер с динамическим полем отчет прикрепил ибо не чего не понял, в первом кадре 2кв всего
Вот смотрите, в первом кадре 29221 байт, всего 160080, то есть первый кадр содержит 18%. Теперь ищите, что туда входит. Это могут быть шрифты, классы (которые в первый кадр грузятся), звуки, картинки, или сложный графика.
Werewolfe
17.07.2007, 14:36
Отсюда следует вывод, либо сносить всю анимацию в первом кадре, либо использовать внешний прелоадер, я правильно понял?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.