18 março 2012

Modelo de navegação de páginas no Windows Phone 7


Os aplicativos para Windows Phone baseiam-se em um modelo de navegação entre páginas do Silverlight, que é bem parecido com a navegação de páginas web. No Windows Phone podemos contar o botão voltar, do hardware. O modelo de navegação é formado por um recipiente chamado de PhoneApplicationFrame, que pode conter uma ou mais PhoneApplicationpage.
A figura a seguir demonstra essa hierarquia.





Você criar quantas páginas for necessário, elas serão armazenadas e apresentadas através do controle frame.  Apenas um único frame está disponível para cada aplicativo, entre algumas de suas características podemos citar as seguintes:
- Determina a área de cliente do aplicativo;
- Reserva espaço para barra de status e barra de aplicativos.
O Windows Phone oferece dois botões importantes na navegação de sua app. O primeiro é o botão Voltar, quando pressionado o usuário retorna a página anterior, caso essa página seja a inicial do aplicativo, essa ação fará com que o usuário saia da aplicação.  O segundo, é o botão Iniciar, que desativa o aplicativo que está sendo executado e retorna a tela inicial do Sistema. A partir daí o usuário poderá iniciar outro aplicativo ou retornar ao anterior utilizando o botão Voltar.
Existem dois métodos importantes usados para a navegação das páginas. São eles:
Navigate: Navega até uma nova página especificada pelo parâmetro URI. Este método é utilizado pelo PhoneApplicationFrame.
GoBack: Navega até a entrada mais recente na pilha.
Na imagem a seguir vemos a seqüência de eventos que ocorrem quando você navega entre as páginas:



À medida que navegamos da Pagina1 para Pagina2, as páginas não são armazenadas como lixo até o método GoBack da página ser chamado. As páginas inativas são armazenadas em uma pilha “voltar.
O sistema operacional mantém uma pilha voltar para páginas às quais você pode retornar. Assim as páginas não são imediatamente destruídas ou coletadas como lixo, quando ocorre navegação de uma página para outra. Em vez disso, as páginas são movidas para a pilha voltar e mantidas ativas (na memória) e, quando o usuário clica em voltar para acessar a página em questão, ela é exibida de volta para o usuário. A página não é recriada (a menos que o aplicativo tenha sido desativado e marcado para exclusão entre o momento em que o usuário saiu da página e clicou em voltar).
Apesar de não ser coletada como lixo quando você sai de uma página, ela não fica mais visível ou ativa até você retornar, por isso deve-se fazer qualquer limpeza e liberar quaisquer recursos quando o usuário sair de uma página.








Um comentário:

  1. Curso de C# web .net VS 2012 em Belo Horizonte, chenpess@gmail.com.


    ResponderExcluir