Android/UI
Android ViewModel 사용법
by startSW
2023. 9. 21.
1. ViewModel Implementation 하기
- App 모듈의 build.gradle에 아래 내용을 추가하고 sync 합니다..
dependencies {
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2")
}
2. ViewModel 클래스 만들기
import androidx.lifecycle.ViewModel
class FlashlightViewModel: ViewModel() {
val isFlashlightOn: Boolean = false
}
3. Activity에서 ViewModel 사용하기
class FlashlightActivity : AppCompatActivity() {
private val viewModel: FlashlightViewModel by lazy {
ViewModelProvider(this)[FlashlightViewModel::class.java]
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
Log.d("FlashlightActivity", "onCreate : ${viewModel.isFlashlightOn}")
}
}