Qual é a diferença entre as fases do ciclo de vida de Activity e Fragment no Android?
sobes.tech IA
Resposta da IA
O ciclo de vida de uma Activity e de um Fragment no Android tem etapas semelhantes, mas existem diferenças-chave:
-
Activity — é um componente independente que gere a interface de utilizador. O seu ciclo de vida começa com
onCreate(), seguido deonStart(),onResume(), e ao sair da tela —onPause(),onStop(),onDestroy(). -
Fragment — é uma parte da interface dentro de uma Activity, dependente do ciclo de vida da Activity, mas com métodos adicionais:
onAttach()— o fragmento é anexado à Activity.onCreateView()— criação da hierarquia View do fragmento.onActivityCreated()— a Activity está completamente criada.onDetach()— o fragmento é desanexado da Activity.
A principal diferença é que o Fragment tem um ciclo de vida mais detalhado, considerando o seu aninhamento na Activity e a gestão da sua própria UI, além de poder ser adicionado ou removido dinamicamente. A Activity gere toda a tela e é um contêiner maior.
Exemplo de um ciclo de vida simplificado do Fragment:
override fun onAttach(context: Context) { super.onAttach(context) }
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragment_layout, container, false)
}
override fun onActivityCreated(savedInstanceState: Bundle?) { super.onActivityCreated(savedInstanceState) }
override fun onDetach() { super.onDetach() }