본문 바로가기

Android/Function

by viewModels() 사용하는 법, by viewModels() 종속성 추가

728x90
반응형

 

 

by viewModels()를 사용하면 ViewModelProvider를 사용하지 않고 viewmodel을 지연 생성할 수 있습니다.

 

private lateinit var viewModel: MyViewModel 

...

viewModel = ViewModelProvider(this).get(MyViewModel::class.java)

 

위의 코드를 아래 한줄로 사용할 수 있습니다.

 

private val viewModel: MyViewModel by viewModels()

 

 

by viewModels() 사용하여 ViewModel 생성하기


 

gradle에 필요한 종속성을 추가해 주어야 합니다.

*ViewModel 종속성은 당연히 필요하여 적지 않았음.

 

android {
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

dependencies {
    implementation 'androidx.activity:activity-ktx:1.1.0'
    implementation 'androidx.fragment:fragment-ktx:1.2.5'
}

 

 


 

728x90
반응형