Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Gestione livelli in AS

  1. #1

    Gestione livelli in AS

    Ho un problema apparentemente semplice, ma che non riesco a risolvere!

    Ho il mio sito e la mia grafica. Ho creato un menu tramite FlashMenuLabs e l'ho inserito nel mio sito tramite il seguente codice AS:

    var container:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth());
    var mcLoader:MovieClipLoader = new MovieClipLoader();
    var listener:Object = new Object();
    listener.onLoadStart = function(target:MovieClip):Void {
    };
    listener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void {
    //trace(target + ".onLoadProgress with " + bytesLoaded + " bytes of " + bytesTotal);
    };
    listener.onLoadInit = function(target:MovieClip):Void {
    _root.createEmptyMovieClip("content_mc",_root.getN extHighestDepth());
    content_mc.attachMovie("content_mc","content_mc",0 );

    // here we pass pointer to controlled MovieClip to FML menu
    target._root.m_remote_control_mc = content_mc.content_mc;

    content_mc._x = 170;
    content_mc._y = 10;
    };

    mcLoader.addListener(listener);
    mcLoader.loadClip("menu.swf",container);

    container._y = 44;

    Ora il mio problema è che vorrei che il "content_mc" si trovi sotto la grafica (un semplice png) e il container sopra a tutto (attualmente si trovano sullo stesso livello).
    Grazie per l'aiuto !!!

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Hai detto bene, è semplice solo in apparenza, specie se tutto quello sotto a cui dovrebbe stare "content_mc" è stato già inserito nello stage in maniera manuale.
    Comunque la soluzione semplice è quella di non creare "content_mc" in runtime, ma inserirlo già come clip vuoto in un livello più basso rispetto agli altri, in modo che stia lì pronto per poterci attaccare quello che hai in libreria (non mi è chiaro perchè lo attacchi da libreria in runtime, invece di metterlo direttamente sullo stage, forse perchè deve apparire in un secondo momento?).

  3. #3
    No, deve apparire subito, in quanto vi è l'animazione della Home. Credo che il motivo principale sia perchè in "container" ci va il menu' creato con FlashMenuLabs e prob se inserisco un clip vuoto anche chiamandolo "content_mc" non potrei indirizzarci i link del menu stesso, o almeno non so come farlo.

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Non avevo letto bene il codice, mi pare di capire che il content_mc ti serve per far funzionare quel menù. Allora fai come ti dico, crea un movieclip vuoto manualmente dal menu a tendina del programma (Inserisci>>Nuovo simbolo), poi crei un nuovo layer nella timeline e lo posizioni sotto agli altri livelli, gli dai nome di istanza "content_mc" e poi modifichi il codice così:

    Codice PHP:
    var container:MovieClip this.createEmptyMovieClip("container"this.getNextHighestDepth());
    var 
    mcLoader:Object = new MovieClipLoader();
    mcLoader.onLoadInit = function(target:MovieClip):Void {
        
    content_mc.attachMovie("content_mc","content_mc",0);
        
    target._root.m_remote_control_mc content_mc.content_mc;
        
    content_mc._x 170;
        
    content_mc._y 10;
    };
    mcLoader.loadClip("menu.swf",container);
    container._y 44

  5. #5
    Geniale !!! Funziona perfettamente !!!! L'unica cosa è che all'avvio carica un SWF esterno e man mano le altre pagine le carica sempre sullo stesso livello in sovrapposizione... dovrei fare in modo di scaricare il filmato e ricaricare il nuovo... secondo te posso farlo nella TL del nuovo clip filmato, in quanto ad ogni fotogramma corrisponde una voce di menu (1 per home, 2 per about, etc)?
    Grazie ancora per l'enorme problema che mi hai risolto !!!

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    L'unica cosa è che all'avvio carica un SWF esterno e man mano le altre pagine le carica sempre sullo stesso livello in sovrapposizione... dovrei fare in modo di scaricare il filmato e ricaricare il nuovo... secondo te posso farlo nella TL del nuovo clip filmato, in quanto ad ogni fotogramma corrisponde una voce di menu (1 per home, 2 per about, etc)?
    Non so come funziona esattamente il menu, perciò ho difficoltà a risponderti in merito, ma se crei ogni volta un nuovo clip per caricarci dentro il file esterno, allora è normale che si sovrapponga agli altri. dovresti usare sempre lo stesso clip per caricare di volta in volta i filmati esterni, così quando ne carichi uno, automaticamente quello precedente viene scaricato.

  7. #7
    Grazie mille !!! In effetti era proprio lì lo sbaglio, risolto e funziona perfettamente !!!

    A presto e ancora grazie !!!!
    Ciao

    Claudio

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.