Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tiago S. A.

Problemas com o Preloader

Recommended Posts

boa noite pessoal

 

acredito que minha duvida seja de principiante

mas estou com problemas no preloader de um site que estou desenvolvendo

 

fiz o site normal, com menu chamando swf separados

 

e peguei na net este preloader:

http://www.adriantnt.net/flash_files/

 

ele funciona, carrega normal

coloco ele no primeiro frame e o conteudo no segundo

 

só que quando você cicla em algum item do menu que ja foi carregado 1 vez ele da uma piscadinha bem rapida (mostrando 1 fiozinho da barra de carregando e o 0%)

 

como faco para resolver isso? ou seja, quando alguem clicar no item do menu ja carregao e ir direto pro conteudo, sem dar a maldita piscada?

 

agradeço desde ja

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi...

Se o preloader está no primeiro frame, deve ter alguma ação para que quando carregado, vá para o segundo frame, e após o segundo frame você não utiliza mais o preloader, deleta! A não ser que no seu menu, tenha alguma ação para voltar ao primeiro frame e apareça novamente o preloader (agora rapidamente porque o conteúdo já foi carregado... Ou não é nada disso...

 

Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi...

Se o preloader está no primeiro frame, deve ter alguma ação para que quando carregado, vá para o segundo frame, e após o segundo frame você não utiliza mais o preloader, deleta! A não ser que no seu menu, tenha alguma ação para voltar ao primeiro frame e apareça novamente o preloader (agora rapidamente porque o conteúdo já foi carregado... Ou não é nada disso...

 

Abs.

então cara, só tem o preloader no 1 frame, no 2 ja nao tem

 

Imagina que cada swf tem só 2 frames , no 1 frame eu tenho movieclip chamdo preloader, você entra nele e na layer actions tem o codigo:

 

_parent.stop();
this.onEnterFrame = function() {
	if (_parent.getBytesTotal()>1) {
		percent = int(_parent.getBytesLoaded()/(_parent.getBytesTotal())*100);
		text_info.text = percent+"%";
		bar_mask._xscale = percent;
		if (percent>=100) {
			_parent.gotoAndPlay(2);
		}
	}
};

 

que é exatamente igual o link que eu tinha passado anterior

 

mas cara, se você souber como faz o preloader certinho, que nem em sites profissionais ja ta otimo pra mim

 

aguardo mais ajuda!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiquei meio confuso tb mas axo que entendi.Acredito que essa piscada seja porque ou na camada onde esta o preloader ele ta visivel no frame 2 tb ou seja nao existe ali um blank keyframe, ou nos swfs que estao sendo carregados exista o mesmo esquema do preloader.

abs

 

P.S Posta o seu site ai pra gnt ver o problema, se possivel.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiquei meio confuso tb mas axo que entendi.Acredito que essa piscada seja porque ou na camada onde esta o preloader ele ta visivel no frame 2 tb ou seja nao existe ali um blank keyframe, ou nos swfs que estao sendo carregados exista o mesmo esquema do preloader.

abs

 

P.S Posta o seu site ai pra gnt ver o problema, se possivel.

 

então cara, não liga não

o site ainda esta em fase de desenvolvimento, preciso arrumar muita coisa

 

http://www.marcuzarquitetural.com.br/

 

por exemplo, fica clicando na foto 1 e na foto 2 (na barra de baixo) varias vezes

 

acho que agora vcs vaum entender

 

no aguardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora entendi, se você ficar clicando no mesmo botão ele vai chamar o mesmo swf, e por consequência inicia do primeiro frame mesmo, e como o conteúdo já foi carregado, vai dar aquela piscada rapida no preloader porque passa novamente pelo primeiro frame...

 

Vamos melhorar isso, pois você não precisa colocar um preloader em cada swf externo, basta criar um único preloader no filme "pai", para isso vamos utilizar a classe "MovieClipLoader" e aproveitando o preloader (MC) que já possui.

 

Vou dar um exemplo supondo que você tenha no "_root", um MC alvo para carregar os swfs, e o mesmo esteja instanciado como "alvoMC";

Coloque e posicione o MovieClip do Preloader dentro do "alvoMC" e apague os códigos que lá estão - instancie o mesmo como "loaderswf";

Volte para a Timeline principal, e coloque no frame que estão as ações dos botões o código abaixo:

stop();
//
var meuMCL:MovieClipLoader = new MovieClipLoader();
var meuListener:Object = new Object();
meuListener.onLoadProgress = function (loaded,total){
	percentLoaded = Math.round((loaded/total) * 100)
	_root.alvoMC.loaderswf.text_info.text = percentLoaded + "%";
	_root.alvoMC.loaderswf.bar_mask._xscale = percentLoaded;
}
meuListener.onLoadInit = function(){
	_root.alvoMC.loaderswf._visible = false;
	_root.alvoMC.loaderswf.text_info.text = "";
}
meuMCL.addListener(meuListener);

// Aqui as chamadas dos botões
instance_button.onRelease = function(){
	_root.alvoMC.loaderswf._visible = true;	
	meuMCL.loadClip("seuFilme.swf", _root.alvoMC);
};

Dessa forma você carrega conteúdo externo utilizando o mesmo preloader sem a necessidade de criar um preloader em cada objeto carregado, e tem um controle maior sobre o objeto.

 

Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora entendi, se você ficar clicando no mesmo botão ele vai chamar o mesmo swf, e por consequência inicia do primeiro frame mesmo, e como o conteúdo já foi carregado, vai dar aquela piscada rapida no preloader porque passa novamente pelo primeiro frame...

 

Vamos melhorar isso, pois você não precisa colocar um preloader em cada swf externo, basta criar um único preloader no filme "pai", para isso vamos utilizar a classe "MovieClipLoader" e aproveitando o preloader (MC) que já possui.

 

Vou dar um exemplo supondo que você tenha no "_root", um MC alvo para carregar os swfs, e o mesmo esteja instanciado como "alvoMC";

Coloque e posicione o MovieClip do Preloader dentro do "alvoMC" e apague os códigos que lá estão - instancie o mesmo como "loaderswf";

Volte para a Timeline principal, e coloque no frame que estão as ações dos botões o código abaixo:

stop();
//
var meuMCL:MovieClipLoader = new MovieClipLoader();
var meuListener:Object = new Object();
meuListener.onLoadProgress = function (loaded,total){
	percentLoaded = Math.round((loaded/total) * 100)
	_root.alvoMC.loaderswf.text_info.text = percentLoaded + "%";
	_root.alvoMC.loaderswf.bar_mask._xscale = percentLoaded;
}
meuListener.onLoadInit = function(){
	_root.alvoMC.loaderswf._visible = false;
	_root.alvoMC.loaderswf.text_info.text = "";
}
meuMCL.addListener(meuListener);

// Aqui as chamadas dos botões
instance_button.onRelease = function(){
	_root.alvoMC.loaderswf._visible = true;	
	meuMCL.loadClip("seuFilme.swf", _root.alvoMC);
};

Dessa forma você carrega conteúdo externo utilizando o mesmo preloader sem a necessidade de criar um preloader em cada objeto carregado, e tem um controle maior sobre o objeto.

 

Abs.

 

opa, desculpe a demora pra responder

 

mas vamos la

 

então, com esse codigo, o alvo é carregado corretamente

 

porem nao aparece a nem a barra de rolagem nem a porcentagem

 

o que sera que acontece?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que barra de rolagem???

Quanto ao texto da porcentagem, verifique as instâncias e se está chamando corretamente sua cx de texto dinâmico...

 

Abs.

escrevi errado

 

barra de carregamento

 

 

acho que o problema é pq o movieclip do preloader esta dentro do alvo

vou tentar jogar ele na timeline principal

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.