[kotlin] Jetpack Compose에서 상태 관리하기

안녕하세요! 이번 포스트에서는 Jetpack Compose에서 상태를 관리하는 방법에 대해 알아보겠습니다.

상태 관리란?

앱의 사용자 인터페이스(UI)에서 표시되는 데이터와 해당 데이터를 업데이트하는 방법을 관리하는 것을 의미합니다. Jetpack Compose에서는 @Composable 함수 내에서 상태를 관리할 수 있습니다.

상태 관리 방법

1. MutableState

MutableState는 읽기/쓰기가 가능한 상태를 나타내는 Compose 라이브러리의 일부 클래스입니다. 이를 사용하여 상태 변화를 관리할 수 있습니다.

import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.getValue
import androidx.compose.runtime.setValue

var count by mutableStateOf(0)

// 상태 업데이트
count = count + 1

2. LiveData

LiveData를 사용하여 데이터의 변경을 감지하고 UI를 자동으로 업데이트할 수 있습니다.

import androidx.compose.runtime.livedata.observeAsState

val countLiveData = MutableLiveData(0)
val countState by countLiveData.observeAsState()

// 상태 업데이트
countLiveData.value++

3. ViewModel

ViewModel은 데이터를 관리하고 UI와 비즈니스 로직 간의 상태를 유지합니다.

class MyViewModel : ViewModel() {
    val count = mutableStateOf(0)

    fun incrementCount() {
        count.value++
    }
}

위의 세 가지 방법 중 하나를 사용하여 Jetpack Compose에서 상태를 효과적으로 관리할 수 있습니다.

이상으로 Jetpack Compose에서의 상태 관리에 대한 내용을 마치도록 하겠습니다. 감사합니다!

참고 자료