navigation 切换compose 的时候 viewModel 会被销毁掉,原本的状态就不存在了。 可以尝试用Hilt保持 viewmodel的状态
一、引入Hilt
project build.gradle 引入 hilt plugins:
id 'com.google.dagger.hilt.android' version '2.44' apply(false)
module build.gradle 引入 plugin 和依赖
plugins {
id 'kotlin-kapt'
id 'com.google.dagger.hilt.android'
}
.... ...
dependencies {
implementation "com.google.dagger:hilt-android:2.44"
kapt "com.google.dagger:hilt-compiler:2.44"
implementation "androidx.hilt:hilt-navigation-compose:1.0.0"
}
kapt