Sobes.tech
Junior

Para que são utilizados os fragmentos, se já existem as Activity?

sobes.tech IA

Resposta da IA

Os fragmentos permitem criar componentes modulares e reutilizáveis de interface de utilizador dentro de uma Activity.

Vantagens principais:

  • Flexibilidade de UI: Facilmente criar diferentes configurações de UI para diferentes tamanhos de ecrã e orientações (tablet vs telefone).
  • Reutilização: O mesmo fragmento pode ser utilizado em várias Activity ou várias vezes numa mesma Activity.
  • Gestão do ciclo de vida: Os fragmentos têm o seu próprio ciclo de vida, que está relacionado com o ciclo de vida da Activity, mas é gerido separadamente.
  • Navegação: Útil para implementar fluxos de navegação complexos dentro de uma mesma Activity (por exemplo, com Navigation Component).
  • Gestão do estado: Permitem guardar o estado de uma parte da UI ao alterar a configuração ou navegar dentro da Activity.

Exemplo de uso para tablets (mestre-detalhe):

Painel esquerdo (lista de elementos) Painel direito (detalhes do elemento selecionado)
ItemListFragment ItemDetailFragment

Exemplo de código para adicionar um fragmento numa Activity:

// Na Activity
supportFragmentManager.beginTransaction()
    .replace(R.id.fragment_container, YourFragment.newInstance())
    .commit()