Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Considerando que tenho 2 elementos do tipo button inseridos manualmente no stage.
Quando eu clico em qualquer um deles eu abro como se fosse um menu pulldown, mas na verdade são textinputs criados dinamicamente.
Para ilustrar olhem o código:
fr001_ch001.addEventListener(MouseEvent.MOUSE_DOWN, criaOpcoes);
fr001_ch002.addEventListener(MouseEvent.MOUSE_DOWN, criaOpcoes);
function criaOpcoes(e:MouseEvent) {
var opcao1:TextField = new TextField();
var opcao2:TextField = new TextField();
opcao1.type = TextFieldType.DYNAMIC;
opcao1.width = 100;
opcao1.height = 20;
opcao1.background = true;
opcao1.border = true;
opcao1.type = TextFieldType.DYNAMIC;
opcao1.text = "opção 1";
opcao1.x = e.target.x + e.target.width + 5;
opcao1.y = e.target.y + opcao1.height + 5;
opcao2.type = TextFieldType.DYNAMIC;
opcao2.width = 100;
opcao2.height = 20;
opcao2.background = true;
opcao2.border = true;
opcao2.type = TextFieldType.DYNAMIC;
opcao2.text = "opção 2";
opcao2.x = e.target.x + e.target.width + 5;
opcao2.y = opcao1.y + opcao2.height + 2;
//
// TODO: - adicionar listener para monitorar o click em qualquer um dos inputtext criados dinamicamente
// quando clicado preencher o objeto de retorno com a opção clicada. (transformar isso em uma classe
// de forma que o retorno esteja disponível em um objeto por um get.
// - antes de criar os inputtext deve-se apagar todos os outros criados dinamicamente na tela.
//
addChild(opcao1);
addChild(opcao2);
e.target.removeEventListener(MouseEvent.MOUSE_DOWN, criaOpcoes);
};
Para evitar de clicar mais de uma vez sem efetuar uma escolha, eu removo o evento de clique de quem chamou (no caso é o listener do botão inserido manualmente no stage).
Até aqui tudo bem, tudo tranquilo!
Agora... rsrs ....
Toda vez que eu for criar esses textinputs dinamicamente eu teria que apagar quaisquer outros que já existam na tela (situação que acontece quando o usuário já clicou em um botão, foram criados os textinputs dinamicamente, mas sem escolher nenhum dos textinputs dinamicos ela clicou no outro botão que repetiu o processo)
Minha dúvida de forma reduzida é:
Eu poderia criar um array na timeline e adicionar o nome dos elementos criados, mas não sei como funciona isso na minha cabeça vai ser um monte de instância com o mesmo nome: opcao1 e opcao2
Carregando comentários...