ViewModelLazy

class ViewModelLazy<VM : ViewModel> : Lazy


An implementation of Lazy used by androidx.fragment.app.Fragment.viewModels and androidx.activity.ComponentActivity.viewmodels.

storeProducer is a lambda that will be called during initialization, VM will be created in the scope of returned ViewModelStore.

factoryProducer is a lambda that will be called during initialization, returned ViewModelProvider.Factory will be used for creation of VM

providerOwner is a lambda that will be called during initialization, returned HasDefaultViewModelProviderFactory will get CreationExtras used for creation of VM

Summary

Public constructors

<VM : ViewModel> ViewModelLazy(
    viewModelClass: KClass<VM>,
    storeProducer: () -> ViewModelStore,
    factoryProducer: () -> ViewModelProvider.Factory,
    extrasProducer: () -> CreationExtras
)

Public functions

open Boolean

Public properties

open VM

Public constructors

ViewModelLazy

<VM : ViewModel> ViewModelLazy(
    viewModelClass: KClass<VM>,
    storeProducer: () -> ViewModelStore,
    factoryProducer: () -> ViewModelProvider.Factory,
    extrasProducer: () -> CreationExtras = { CreationExtras.Empty }
)

Public functions

isInitialized

Added in 2.1.0
open fun isInitialized(): Boolean

Public properties

value

Added in 2.1.0
open val value: VM