Junior — Middle
Quais métodos garantem a preservação do estado dos dados ao recriar uma Activity no Android?
sobes.tech IA
Resposta da IA
Para manter o estado dos dados ao recriar uma Activity no Android, normalmente usam-se métodos de salvaguarda e restauração do estado através de Bundle.
Abordagens principais:
- Sobrescrever o método
onSaveInstanceState(Bundle outState)e guardar os dados necessários emoutState. - No método
onCreate(Bundle savedInstanceState)ouonRestoreInstanceState(Bundle savedInstanceState), restaurar os dados a partir desavedInstanceState.
Exemplo:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("key", someValue);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
someValue = savedInstanceState.getString("key");
}
}
Também é possível usar ViewModel para armazenar dados que sobrevivem à recriação da Activity sem necessidade de salvá-los manualmente em um Bundle.