Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Telas diferentes em uma Activity

Baseado em q vc toma essa decisão?

Ele clicou em um botão? Vc leu de um SharedPreferences?
Eu insisto, coloque essa decisão em uma Activity e chame uma especifica para cada tipo de comportamento que você quer.

[]s

---
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>
@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

@Override
protected void onStart() { // ou onResume()
super.onStart();
if(login()){
  setContentView(R.layout.login);
} else {
  setContentView(R.layout.logout);
}
}

Agradeço qq ajuda

Abs,




  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário