En esta entrada os comparto un ejercicio de conservar el estado al rotar la pantalla del curso LexDroid 2015 de Escuela IT.

El ejercicio consiste en cambiar el valor de dos variables (nombre y cambios) al pulsar el botón de «Aceptar» y mostrarlas en un TextView. En circunstancias normales, al rotar la pantalla, se perdería el valor de estas dos variables y el texto mostrado en el TextView volvería a su valor original, ya que Android no guarda su estado automáticamente al rotar la pantalla (para más información de por qué pasa esto, podéis consultar Activity Lifecycle) .
Para guardar manualmente el estado y restaurarlo al rotar la pantalla, tenemos que sobreescribir dos métodos:
- onSaveInstanceState: Este método se encarga de guardar el estado.
- onRestoreInstanceState: Este método restaura el estado y el texto del TextView.
Además, para comprobar mejor el efecto, se ha puesto una casilla que indica «Conservar estado». Si está marcada, se comprobará que al rotar la pantalla (Control + F12 en Windows), el estado se conserva, mientras, que, si está desmarcada, vuelve al inicio.
El código lo tengo compartido en mi cuenta de GitHub: