Os usos destes dois comportamentos são bem distintos:

States são utilizados em dois escopos: em um escopo mais global
funcionam como se fossem páginas de um website. Por exemplo: quando
você tem uma tela que só possui uma janela de autenticação e, uma vez
autenticado, muda o estado para o aplicativo em si. Pode ser feito com
ViewStack? Pode sim, mas é mais comum ver isso como states.

O outro escopo de state é para manter estados entre componentes. Você
com certeza já teve ter visto os exemplos de efeitos de transição de
estados na documentação da Adobe quando você tem uma janela de
autenticação e um botão para criar um novo usuário (ou recuperar
senha, não me recordo), e a mudança de estado agrega mais componentes
à tela, com efeitos de transição opcionais.

O ViewStack, por outro lado, é mais utilizado para alternar páginas
dentro de um componente (como dentro de um panel por exemplo), para
coisas que sejam completamente distintas (como o TabNavigator, ou um
Wizard). Não há como remover ou adicionar componentes (ou seja,
ViewStack não herdam o estado anterior como States fazem). É mais
parecido com uma mudança de página por completo.

Tecnicamente, ambos são semelhantes, pois os componentes que estão em
outro estado ou em outro container do ViewStack não são criados até
que o mesmo seja visível. Então, para todos os fins, utiliza-se States
para mudar um estado global do aplicativo (como o exemplo da
autenticação que dei) ou para mudar estados de componentes com herança
de estados (como o exemplo da Adobe).

Componentes que mostram diversas partes dentro de si (como um
Assistente com os botões Próximo, Anterior, por exemplo) são feitos
com ViewStack, pois eles não utilizam efeitos de transição (não
confundir com efeitos), nem herança.



2010/2/9 Marcel Araujo <ceceld...@gmail.com>:
> Galera, surgiu uma dúvida um tanto boba!!! Já li e reli o manual mas surgiu
> este paradigma e nada flui desde então. Quando usar viewstacks ou states???
> Atualmente quando eu trabalho em cima de tabs tenho utilizado as viewstacks
> e para o restante, states (transições de telas, efeitos...).
>
> Queria um help mais técnico mesmo de vocês...
>
> --
> Abraços......
>
> Marcel Araujo
> System Analyst
> Developer Java/PHP/RIA
> Linux User #490101
> http://br.linkedin.com/in/marcelaraujo
> http://www.twitter.com/marcelaraujo
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
> Para sair da lista, envie um email em branco para
> flexdev-unsubscr...@googlegroups.com
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev



-- 
[]
Júlio César Ködel G.
"Você pode ficar sem comer durante 3 dias, sem beber durante 2 dias,
mas não pode ficar sem respirar por mais de 5 minutos.
Então, antes de imprimir isso, lembre-se que o oxigênio deste planeta
vem da árvore morta para fazer o papel que irá utilizar."

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a