Gestionar estado en Jetpack Compose con rememberSaveable
Entiende recomposición, estados observables y conservación de entradas breves.
Construir un formulario cuyo valor no desaparezca al rotar el dispositivo.
Antes de comenzar
Parte de un proyecto de prueba o de una copia de trabajo de tu aplicación. Revisa versiones, permisos y dependencias en los enlaces oficiales del final: las plataformas Android y los servicios de Google pueden actualizar sus requisitos.
El objetivo de esta guía es aplicar un proceso concreto y comprobar su resultado. Documenta cualquier cambio relevante para poder mantenerlo y, cuando corresponda, medir sus efectos con datos.
Cómo hacerlo
Identifica qué valores pertenecen solamente a la…
Identifica qué valores pertenecen solamente a la interfaz: texto de formulario, pestaña seleccionada o desplegable.
Usa remember para estado que solo debe…
Usa remember para estado que solo debe sobrevivir recomposiciones y rememberSaveable para datos pequeños restaurables.
Declara un valor de estado con mutableStateOf…
Declara un valor de estado con mutableStateOf y actualízalo desde la acción del usuario.
Mantén el estado en el componente propietario…
Mantén el estado en el componente propietario y pásalo a componentes hijos mediante parámetros y callbacks.
Comprueba una rotación y, cuando corresponda, recreación…
Comprueba una rotación y, cuando corresponda, recreación del proceso para verificar qué datos realmente se conservan.
Traslada datos duraderos a Room o DataStore,…
Traslada datos duraderos a Room o DataStore, porque el mecanismo de estado guardado no reemplaza una base de datos.
@Composable
fun Buscador() {
var consulta by rememberSaveable { mutableStateOf("") }
OutlinedTextField(
value = consulta,
onValueChange = { consulta = it },
label = { Text("Buscar") }
)
}Fragmento educativo: adapta las importaciones, clases, dependencias y versiones a tu proyecto. Consulta la documentación oficial antes de integrarlo.
Ejercicio práctico
Crea un campo de búsqueda; escribe un valor, rota el dispositivo y comprueba que el texto continúe visible.
No guardes imágenes, colecciones enormes ni secretos en rememberSaveable o SavedStateHandle.
Cómo verificar el resultado
- Completa los pasos anteriores en un entorno de pruebas antes de distribuir cambios.
- Comprueba que la función, configuración o estrategia responde al objetivo planteado.
- Revisa errores, impacto para usuarios y políticas aplicables a tu caso.
- Conserva la evidencia y anota qué deberás revisar cuando cambien las versiones.
Fuentes oficiales para profundizar
Consulta los requisitos y ejemplos vigentes en estas fuentes antes de publicar una implementación.