Почему ViewModel пересоздается?
class GalleryViewModel(application: Application) : AndroidViewModel(application) {
private val galleryRepository = GalleryRepositoryImpl()
private val _galleryImagesData = MutableLiveData<List<ImageItem>>()
val galleryImagesData:LiveData<List<ImageItem>> get() = _galleryImagesData
init {
Log.d("tag","zagruzka")
getImagesFromGallery()
}
private fun getImagesFromGallery() {
val dispose = galleryRepository.getImagesFromGallery(getApplication())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe({ paths ->
_galleryImagesData.value =
paths.map { ImageItem(Status.SUCCESS, it.first, it.second, null) }
}, {
it.printStackTrace()
})
}
}
Вот так вот я делаю observe
galleryViewModel.galleryImagesData
.observe(viewLifecycleOwner, Observer {
adapter.setItems(it)
})
И вот так вот получаю viewmodel в фрагменте в методе onViewCreated
private lateinit var galleryViewModel: GalleryViewModel
galleryViewModel = ViewModelProvider(this).get(GalleryViewModel::class.java)
Почему лог запускается после каждого поворота?