Eu tenho várias telas em flex, por exemplo: tenho uma tela de cadastro que são feitas em 4 passos.
então tenho 4 telas, cadastro1.mxml, cadastro2.mxml…
Na tela cadastro1.mxml eu tenho um botão que precisa chamar o cadastro2.mxml passando alguns dados da tela cadastro1.mxml
Como eu faço essa navegação entre telas passando esses dados?
Exemplo: o primeiro passo eh digitar o nome ae eu clico no botao, na tela cadastro2.mxml tem que aparecer o nome digitado na tela cadastro1.mxml e assim por diante
Bruno,
No Flex existe os containers e um tipo é os navegadores, q são: ViewStack, TabNavigator e Accordion, dá uma olhada acredito q um deles irá te auxiliar.
[]s
brunorota
Valew Fabio
Eu até conhecia esses continer usei em um caso, vou analisar que isso pode me ajudar nessa situação
Mais tem algumas situações que não tem como
Preciso da navegação, tipo clicar em um botão e carregar outra tela
Vc sabe como fazer isso?
F
fabiophx
Bruno,
Vc pode usar estes componentes e vc tem como navegar de forma programática usando os atributos selectedIndex e selectedChild.
[]s
brunorota
Tipo, vc ta falando pra eu fazer uma tela principal e a partir dessa tela criar apenas um container ViewStack por exemplo com varias telas nele?
Eu to pensando no seguinte ter várias telas, varios mxml e quando eu clicar em um botão no mxml principal tipo, abrir cadastro de pessoa, carregar a página cadastro de pessoa
Entendeu?
Não tem como fazer isso?
F
fabiophx
Bruno,
Entendi, é q normalmente qd é um cadastro com vários passos se usa navegadores.
No teu caso vc pode abrir várias janelas usano PopUpManager.
brunorota
Eh na parte de cadastro eu vou fazer isso mesmo que você falou hehehe
Tem como eu carregar otra página na mesma página, sem ser em uma janela diferente?
F
fabiophx
Bruno,
Não entendi, janela do navegador?
[]s
renzonuccitelli
Quando são vários passos no estilo Wizard, eu uso o ViewStack, como no segundo vídeo do Revelação Virtual (RV). Quando é simplesmente uma tela que deve aparecer e sumir, eu criei um esquema de despachar eventos que são capturados pelo meu application, que então adiciona ou remove a tela que passo como parâmetro no evento. Você pode ver isso na minha tela de login tb no RV.
Precisando de um curso em flex, de uma olhada na Nuccitec.
[]s
brunorota
Sim fabio janela do navegador
Por esse pop-up não ia abrir uma aba a mais no navegador?
Eu quero que apenas carregue outra tela na mesma aba
F
fabiophx
Bruno,
Para abrir uma nova aba do navegador vc usa flash.net.navigateToUrl.
Uma aplicação Flex independente do objeto sempre usará a mesma aba. O PopUp é normalmente uma TitleWindow (q herda de Panel) q será mostrada como janela de sua aplicação modal ou não. Os navegadores num mesmo espaço vc pode ter várias informações / objetos e cada conjunto sendo mostrado no momento mais adequado.
[]s
R
Rovides
tenta usar View State para este caso acredito que funcione.
Ou crie variaveis publicas [BINDABLE] nas telas e no momento do click voce instancia o form (se for TitleWindow, Module , Panel…)desejado e da carga nas variaveis.
[BINDABLE]publicstaticvarv_Nome:String;// é static mas olhe que no momento que eu achamo eu instancio sempre um novo...//aqui gets & setsprivatefunctioncarregaNome():void{MeuCampoTexto.Text=v_Nome;}
Eu utilizo assim a algum tempo e em uns casos mais complicados, ex: Passo a tela INTEIRA como parametro, grid e tal . Funciona numa boa
Espero que ajude
FLWW
marcosFA
Não é recomendável passar a tela inteira como parâmetro. Nesse caso o melhor seria usar os queridos VOs(Pattern) para repassar as informações entre “telas” no flex.
Outra coisa, no Flex 3 era muito usado a estruturação de “telas”(views) usando o viewStack. Porém, no Flex 4 exista uma prática melhor, pois utiliza o conceito, muito útil, de States. Todos os objetos que herdam de UIComponent(incluindo “telas”) do SDK do Flex possuem a propriedade String “currentState”. Utilizando a ideia de states é possível criar telas que se ajustam de acordo com o ponto que o usuário está na aplicação.
A prop “includeIn” diz que aquele componente visual só será visível se o Group estiver no state(estado) referenciado. Então para quem já usou muito o viewStack, consegue perceber como fica mais fácil manipular o “estado da aplicação” utilizando o conceito de states. É recomendável utilizar states ao invéz da ViewStack. As razões são:
-Uso de uma quantidade menor de componentes na tela, uma vez que o não é necessário um comp somente para controlar as “telas”(viewStack).
-Simplificação e legibilidade do código melhorada.