movieclipsdinamicamente

/ Tutoriais

Criando MovieClips dinamicamente com Action Script 3 – I

Tutorial

Criar MovieClips dinamicamente, utilizando Action Script 3, é uma tarefa fundamental para ao desenvolvimento de aplicações dinâmicas e interativas.

Quando falamos em criação de MovieClips dinamicamente, temos três finalidades:

  1. Utilizar o MovieClip criado como container para outros símbolos.
  2. Utilizar o MovieClip criado como um elemento de interface modelo (que se repetirá).
  3. Desenhar dinamicamente o conteúdo do MovieClip.

Nesse artigo iremos falar sobre a primeira finalidade.

Para criar um MovieClip como container, basta apenas criar um MovieClip vazio e utilizar o metódo “addChild()” para adicionar o conteúdo. Posteriormente podemos acessar o conteúdo que adicionamos ulizando variáveis ou alguns recursos da classe MovieClip.

Vejamos o exemplo a seguir:

Na linha 11, criamos um MovieClip vazio, utilizando o comando “new MovieClip()”. Conforme vimos em artigos anteriores, utilizamos o operador new para criar novos objetos de uma determinada classe.

Na linha 20 utilizamos um laço de repetição “for” para percorrer o array de urls que criamos na linha 1. Caso você tenha dificuldades em entender esse trecho, sugiro que você procure pelo tutorial sobre laços de repetição e sobre arrays (vetores) na categoria básico.

A cada iteração do nosso laço “for”, uma nova ordem de load de imagem é enviada ao flash. Lembre-se que os comandos são executados independente do load da imagem ter sido concluído ou não, ou seja, a instrução de load de imagem é enviada para o Flash e o load é iniciado em paralelo ao laço “for” que avançará para o próximo item do vetor “imagens”.

Na linha 29 posicionamos o objeto loader de acordo com o valor da varíavel i. Dessa forma, as imagens não ficarão uma em cima da outra.

Na linha 33 adicionamos o objeto loader ao MovieClip containerImagens_mc. Assim, logo que o load finalizar, o conteúdo correspondente será exibido dentro do MovieClip containerImagens_mc. A função “addChildAt()” permite especificarmos a posição Z onde o elemento será adicionado ao MovieClip alvo do método. A posição Z define a ordem dos elementos dentro de um MovieClip, ou seja, qual elemento vem a frente de qual. Dessa forma, estamos adicionando elementos com propriedade Z crescente iniciando 0.

Já na função ApagarItens na linha 41 criamos um laço de repetição que se repete enquanto o MovieClip “containerImagens_mc” possuir elementos filhos (elementos dentro dele). Assim, enquanto essa condição for verdadeira, o código presente na linha 44 realiza a remoção do primeiro elemento da lista de filhos dele.

Neste artigo apresentamos alguns recursos que nos permitem, por exemplo, criar uma galeria de imagens. Podemos usar um MovieClip vazio para armazenar, posicionar e remover imagens.

Nos próximos artigos veremos outras finalidades para a criação dinâmica de MovieClips. Em artigos futuros também exploraremos exemplos mais completos. Em caso de dúvidas, fique a vontade para perguntar.



Arivan Bastos

Analista de sistemas, desenvolvedor Web e de games. Possui domínio de PHP, SQL e ActionScript 3. Possui conhecimentos avançados em Starling Framework, Corona SDK e Yii Framework. Atua na Virtualize na criação de sites, desenvolvimento de jogos, desenvolvimento de aplicativos mobile e desenvolvimento de aplicativos para redes sociais.