Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    2

    [AS3] Reader da XML - Come aggiornare testo?

    Spettabile Community di Html.it,

    ho realizzato in Flash (utilizzando AS3) un lettore di informazioni da un file XML (e... funziona!).
    Ora vorrei che ogni 5 secondi le informazioni visualizzate fossero aggiornate, ma non so come fare.

    Una soluzione facile l'avrei trovata inserendo una serie di frame dopo il keyframe, solo che le nuove scritte vengono sovrapposte a quelle precedenti.

    Mi potreste cortesemente suggerire un metodo valido?


    Grazie e cordiali saluti a tutti,

    Massimo

    PS: se avete anche suggerimenti per snellire il codice, sono ben accetti!!

    Allego il codice:
    (Nota: Campo e Campo2 sono campi di testo dinamici. 'prossimo', 'in_onda' e 'precedente' sono movieclip)

    dati = new URLLoader();
    url = new URLRequest("http://www.dominio.it/file.xml");
    dati.load(url);
    dati.addEventListener(Event.COMPLETE, nowplaying);

    function nowplaying(evt:Event) {
    song = new XML(dati.data);

    scritta = new Campo2();
    scritta.Artista.text = "Artista: " + song.NP.(@Id == "Next1").Info.Artista.text();
    scritta.Titolo.text = "Titolo: " + song.NP.(@Id == "Next1").Info.Titolo.text() + " - " + song.NP.(@Id == "Next1").Info.Movimenti.text();
    prossimo.addChild(scritta);


    songList = song.NP.(@Id == "Current").Info.children();
    posY = 0;
    for each (node in songList) {
    if (node != "") {
    scritta = new Campo();
    scritta.Field.text = node.name() + ": " + node.text();
    scritta.y = posY;
    in_onda.addChild(scritta);
    posY += 15
    ;
    }//end if
    }//end for


    songList = song.NP.(@Id == "Last1").Info.children();
    posY = 0;
    for each (node in songList) {
    if (node != "") {
    scritta = new Campo();
    scritta.Field.text = node.name() + ": " + node.text();
    scritta.y = posY;
    precedente.addChild(scritta);
    posY += 15
    ;
    }//end if
    }//end for
    }//end nowplaying

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Scusa ma il tuo filmato funziona con quel codice? A me da una serie di warning per variabili non inizializzate, dati, song, scritta, prossimo ecc...

    Ps. per avere qualche risposta in più conviene che inserisci uno schema dell'xml che dovrebbe venir letto dal tuo codice.

    [edit] comunque guardando il codice un po meglio, vedo che ogni volta crei un dei nuovi campi e ne fai l'addChild in alcuni clip, è per questo che le scritte si sovrappongono, fai da parte una sola volta l'aggiunta di quegli elementi e fanne solo il riempimento dentro all'evento scatenato al COMPLETE.

  3. #3
    ciao per caricare le info ad intervalli regolari devi usare una funzione richiamata da un timer.
    Se ti serve modificare i dati xml e poi importarli modificati dai una letta a questo mio articolo,che puo aiutarti per alcuni problemini di importazione:
    http://www.cyberfox.netsons.org/blog...hp?a=view&id=7

    ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    2

    Grazie!!

    Innanzitutto vi ringrazio tanto per le risposte!!

    Per quanto riguarda ciò che mi ha scritto 'and80', effettivamente nel codice che avevo copiato avevo omesso tutta la parte delle dichiarazione delle variabili. Inoltre ho creato i campi di testo dinamici direttamente sullo stage e non con delle function.
    Comunque mi hai illuminato su un errore che avevo commesso... non serviva fare l'addChild ogni volta.. per questo le scritte si sovrapponevano!

    Ringrazio anche '_GreyFox_' per la segnalazione del suo articolo, visto che per l'aggiornamento pensavo proprio di implementare una funzione Timer (anziché aggiungere una serie di frame dopo il keyframe!).

    Ora sistemerò il mio codice in base ai vostri suggerimenti!

    Grazie 1000 per l'aiuto!!

    Ciao, Massimo

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 © 2025 vBulletin Solutions, Inc. All rights reserved.