Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    1,309

    [AS3] Problema con TransitionManager

    Salve a tutti, sto cercando di creare uno slider di immagini, ma con notevoli problemi, in pratica ho 3 clip sullo stage, e dopo aver letto da 3 diversi xml e messo in diversi array delle url di foto, faccio comparire queste foto in modo random, il problema è che vorrei mettere una transizione, e quindi uso la classe TransitionManager, il problema che sembra funzionare tutto correttamente, ma dopo n numero di transizioni, incomincia a dare dei problemi, in pratica le foto restano semi trasparenti, mi sapete dire perchè?? vi posto il codice della transazione:
    Codice PHP:
    private function gestioneIntervallo(t:TimerEvent):void {
        
    trace(idxArr);

        for (var 
    i:int=0i<numIndexClipi++) {
            var 
    numRandom:Number randRange(0, (this.arrClip["arrFile_"+i].length-1))
            
    trace("Lunghezza arr "+i+": "this.arrClip["arrFile_"+i].length);
            
    trace("Numero Random: ---"+numRandom);
            
            var 
    RequestUrl:URLRequest = new URLRequest(this.arrClip["arrFile_"+i][numRandom].toString());
            var 
    loaderIMG:Loader = new Loader(); //creiamo un oggetto Loader per caricare file di immagine JPG
            
    loaderIMG= new Loader(); //creiamo un oggetto Loader per caricare file di immagine JPG            
            
    loaderIMG.load(RequestUrl);
            
            
    arrClip["mc_loader_"+i].addChild(loaderIMG);
            
            var 
    myTransitionManager_01:TransitionManager = new TransitionManager(arrClip["mc_loader_"+i]);
            
    //myTransitionManager_01.addEventListener("allTransitionsInDone", andTransition);
            
    myTransitionManager_01.startTransition({type:Fadedirection:Transition.INduration:2easing:Strong.easeOut});
        
            
        }

    Ciao By Peter_Pan...

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    1,309
    credo di aver capito il problema ma non so come risolverlo, in pratica io ho creato una funzione che fa partire un timer, che ogni tot millisecondi va a chiamare la funzione gestioneIntervallo, che ha il compito di caricare e visualizzare la nuova foto e di eseguire la transizione con la classe TransitionManager, il problema che ad un certo punto il timer si accavalla con la durata della transizione, quindi io gli dovrei dire che dopo 5 secondi deve caricare una foto nuova, poi deve far partire la transizione e solo alla fine di questa transizione deve far ripartire il timer, mi sapete aiutare, vi posto anche la funzione con il timer:
    Codice PHP:
    public function initTimer(strNomeClip:String):void {
        var 
    timer=new Timer(5000);
        
    timer.addEventListener(TimerEvent.TIMER,this.gestioneIntervallo);
        
    timer.start();

    Funzione per gestioneIntervallo
    Codice PHP:
    private function gestioneIntervallo(t:TimerEvent):void {
        
    trace(idxArr);

        for (var 
    i:int=0i<numIndexClipi++) {
            var 
    numRandom:Number randRange(0, (this.arrClip["arrFile_"+i].length-1))
            
    trace("Lunghezza arr "+i+": "this.arrClip["arrFile_"+i].length);
            
    trace("Numero Random: ---"+numRandom);
            
            var 
    RequestUrl:URLRequest = new URLRequest(this.arrClip["arrFile_"+i][numRandom].toString());
            var 
    loaderIMG:Loader = new Loader(); //creiamo un oggetto Loader per caricare file di immagine JPG
            
    loaderIMG= new Loader(); //creiamo un oggetto Loader per caricare file di immagine JPG            
            
    loaderIMG.load(RequestUrl);
            
            
    arrClip["mc_loader_"+i].addChild(loaderIMG);
            
            var 
    myTransitionManager_01:TransitionManager = new TransitionManager(arrClip["mc_loader_"+i]);
            
    //myTransitionManager_01.addEventListener("allTransitionsInDone", andTransition);
            
    myTransitionManager_01.startTransition({type:Fadedirection:Transition.INduration:2easing:Strong.easeOut});
        
            
        }

    Ciao By Peter_Pan...

  3. #3
    Io di solito in AS2, creo un setInterval alla fine della transizione, e lo distruggo subito dopo che è stato lanciato.

    Praticamente una cosa del genere

    codice:
    idInt = setInterval(cambia, 1000)
    
    function cambia(){
      clearInterval(idInt)
      var anim = new Tween(.....
    
      anim.onMotionFinished=function(){
        idInt = setInterval(cambia, 1000)
      }
      
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.