Sobes.tech
Junior — Middle

Como é que a conservação do estado atual da interface de utilizador é realizada na aplicação?

sobes.tech IA

Resposta da IA

No Android, para guardar o estado atual da interface (por exemplo, o conteúdo dos campos de entrada, a posição de rolagem, etc.), utiliza-se o mecanismo de salvamento do estado da atividade ou fragmento.

Principais métodos:

  • Sobrescrever o método onSaveInstanceState(Bundle outState), onde os dados necessários são salvos em outState.
  • No método onCreate(Bundle savedInstanceState) ou onViewCreated, restaurar o estado a partir de savedInstanceState.

Isso permite que, ao recriar a atividade (por exemplo, ao girar a tela), a interface seja restaurada no mesmo estado.

Exemplo:

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString("input_text", editText.getText().toString());
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (savedInstanceState != null) {
        String text = savedInstanceState.getString("input_text");
        editText.setText(text);
    }
}