Learn how to keep UI state (e.g., expanded/collapsed) of list items stable while scrolling and across configuration changes using LazyColumn item keys and rememberSaveable.
rememberSaveable removes onSaveInstanceState boilerplate in Jetpack Compose, but it serializes into a Bundle with strict size limits and no guarantee across process death. Learn when to use it, how to write custom Savers, and how to verify state actually survives rotation.
Use rememberSaveable to keep Compose UI state—text, toggles, lists—through device rotations without a ViewModel. Follow the step‑by‑step guide, verify with Layout Inspector, and know the limits.
Use remember with keys for cheap, eagerly computed derivations. Use derivedStateOf when the value depends on State objects and you want calculation deferred until the UI actually reads it—avoiding work during compositions where the derived value isn't needed.
Instantly preview Jetpack Compose UI in Android Studio, customize device configs, and catch errors early. Learn how to set up, tweak, and trade‑off the Preview feature with a hands‑on example and practical checklist.
Stop waiting for Gradle. Learn how to use Android Studio Live Edit to hot-reload Compose UI changes instantly without losing your app state or navigation stack.
Learn how to pair key-based item identity with rememberSaveable in Jetpack Compose’s LazyColumn to keep scroll position, preserve checkbox state across rotations, and cut unnecessary recompositions. Includes a working example, limits, and common pitfalls.