sábado, 24 de outubro de 2015

Android básico: testando Fragments, transactions e backStack

  O principal objetivo desse exemplo é testar o uso de transações com fragments, incluindo o backStack e aproveitando a oportunidade, mostrar o comportamento da activity (com fragment) quando ela for destruída e recriada.
  Esse app tem apenas uma activity e um fragment e funciona assim: tem um botão (Next Frag) que ao ser tocado vai solicitar à activity um novo fragment.
  Apesar da simplicidade, podemos fazer diversos experimentos:
  Primeiro, ao fazer o teste, notamos que a contagem vai de um em um (1, 2, 3, ...). Se virarmos o celular, a activity vai ser destruída e recriada, mas a tela é reconstruída como estava na última posição.
  Segundo, ao retirar a linha que está comentada com a letra A (o return), o que acontece ao realizar o teste? Isso se deve ao fato de que estamos criando uma nova instância do fragment (com o novo count) e substituindo a anterior. Não é esse o comportamento esperado, então vamos deixar o return no seu devido lugar.
  Terceiro, ao retirar o comentário da linha com a letra B, vamos testar o funcionamento da pilha de fragments, para isso basta teclar diversas vezes no botão "Next Frag" e em seguida no "Voltar", os framents são salvos e recuperados com o "Voltar".

  Seguem os códigos.

MainActivity.java




Fragment1.java




activity_main.xml




fragment1.xml




  Uma observação final, a forma como chamei o método da activity não é o recomendado, o ideal é via uma interface, mas como, nesse caso, só temos uma activity é aceitável.

Abraços!

Nenhum comentário:

Postar um comentário