с#
Size: a a a
с#
CC
с#
OY
с#
J
с#
IP
fun <reified T> f()
fun <T> f(klass: KClass<T>)
fun <reified T> f() = f(T::class)
J
fun <reified T> f()
fun <T> f(klass: KClass<T>)
fun <reified T> f() = f(T::class)
inline fun <reified VM : ViewModel> Fragment.navGraphViewModels
IP
inline fun <reified VM : ViewModel> Fragment.navGraphViewModels
IP
IP
с#
IP
@MainThread
public fun <VM : ViewModel> Fragment.navGraphViewModels(
klass: KClass<VM>,
@IdRes navGraphId: Int,
factoryProducer: (() -> ViewModelProvider.Factory)? = null
): Lazy<VM> {
val backStackEntry by lazy {
findNavController().getBackStackEntry(navGraphId)
}
val storeProducer: () -> ViewModelStore = {
backStackEntry.viewModelStore
}
return createViewModelLazy(
klass, storeProducer,
{
factoryProducer?.invoke() ?: backStackEntry.defaultViewModelProviderFactory
}
)
}
J
@MainThread
public fun <VM : ViewModel> Fragment.navGraphViewModels(
klass: KClass<VM>,
@IdRes navGraphId: Int,
factoryProducer: (() -> ViewModelProvider.Factory)? = null
): Lazy<VM> {
val backStackEntry by lazy {
findNavController().getBackStackEntry(navGraphId)
}
val storeProducer: () -> ViewModelStore = {
backStackEntry.viewModelStore
}
return createViewModelLazy(
klass, storeProducer,
{
factoryProducer?.invoke() ?: backStackEntry.defaultViewModelProviderFactory
}
)
}
AM
GO
RI