State 썸네일형 리스트형 [Compose] UI 상태 저장 및 복원 Compose 공식문서를 참고하여 작성하였습니다 UI 상태는 Activity나 프로세스 재생성으로 인해 손실될 수 있다좋은 UX를 위해 UI 상태를 유지하는 것이 중요하다(사용자가 타이핑을 하고 있는데 재생성으로 인해 타이핑하던 text가 없어지면..?!) 상태를 저장하고 복원하기 위해 다양한 API를 사용할 수 있고, 상태가 저장되는 위치와 로직에 따라 달라질 수 있다 상태가 UI에 위치한 경우UI 상태가 Composable 함수나 Composition 범위에 지정된 PlainStateHolder에서 관리될 경우,rememberSavable을 사용해 재생성 후 상태를 유지할 수 있다 rememberSavable 특징UI 상태를 저장하고 복원Activity, 프로세스 재생성 후에도 상태 유지Primit.. 더보기 [Compose] 상태 호이스팅(State Hoisting) Compose 공식문서를 참고하여 작성하였습니다 UI 상태는 UI 상태를 읽고 쓰는 모든 컴포저블의 가장 낮은 공통 상위 요소로 호이스팅해야 합니다 UI 상태(UiState)와 UI 로직 종류 UI 상태 (UI를 설명하는 property)화면 UI State -> 화면에 표시해야 하는 정보 예를 들어, NewsUiState 클래스는 뉴스 기사, 기타 UI 렌더링에 필요한 정보를 포함data class NewsUiState( val isLoading: Boolean = false, val newsList: List = emptyList(), val error: String? = null) UI element State -> UI 요소 자체의 속성 (Visibility, font, fontS.. 더보기 [Compose] 상태 관리 Compose 공식문서를 참고하여 작성하였습니다 State와 CompositionCompose에서는 State(상태)가 업데이트 될 때마다 Recomposition 실행 예시) 상태 변화가 없는 코드@Composableprivate fun HelloContent() { Column(modifier = Modifier.padding(16.dp)) { Text( text = "Hello!", modifier = Modifier.padding(bottom = 8.dp), style = MaterialTheme.typography.bodyMedium ) OutlinedTextField( v.. 더보기 이전 1 다음