@Pedro,
Valeu. Vou olhar o material que passou e já comento aqui.
@Neto,
Isso. Essa é a primeira tela. Acho que fiz confusão com os nomes. Segue uma versão melhorada:
@Override
protected void onStart() { // ou onResume()
super.onStart();
if(estaLogado()){
setContentView(R.layout.tela_logado);
} else {
setContentView(R.layout.tela_anonimo);
}
}
O problema é que o usuário pode usar a app como anônimo, mas se faz o login em algum ponto e voltar para a primeira Activity depois, teria que exibir a tela para usuário, não para anônimo.
Estou pensando agora, de repente, em uma única Activity com FrameLayout como root e dois LinearLayout como filhos, um para logado e outro para anônimo. Dependendo de estar logado ou não, um ou outro fica invisível.
Em 30 de maio de 2012 02:26, Neto Marin <netomarin@gmail.com> escreveu:
Cara, esse com certeza não é o melhor caminho.Essa tela não deve ser a sua primeira da aplicação, certo? Afinal, nunca vi uma app começar pelo logout. Então, antes de mudar de tela vc faz a validação q precisar e ai chama uma activity ou outra.---
Neto Marin
Blog: http://blog.netomarin.com
GTalk: netomarin@gmail.com
MSN: neto_marin@hotmail.com
Skype: netomarin
2012/5/30 Gink Labrev <gink.labrev@gmail.com>Pessoal,Gostaria de esclarecer uma dúvida, talvez meio noob.Tenho uma activity que quero instanciar a tela de acordo com uma determinada propriedade (como por, exemplo o usuário estar logado ou não) e essa Activity pode ser acionada pelo backstack, se estiver na pilha.Então ao invés de alocar a lógica de criar a tela em onCreate(), seria uma prática adequada alocá-la em onStart() ou onResume() para garantir que seja chamada, msm se vier da pilha ?Algo tipo@Overrideprotected void onStart() { // ou onResume()super.onStart();if(login()){setContentView(R.layout.login);} else {setContentView(R.layout.logout);}}Agradeço qq ajudaAbs,
0 comentários:
Postar um comentário