作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我调用了一个 ViewModel,它在其构造函数中获取三个参数:
class DetailViewModel(
private val id: Long,
private val tipo: String,
private val msRepository: MSRepository) : ViewModel() {
val establishmentProfessional by lazyDeferred {
msRepository.getEstablishment(id, tipo)
}
}
class DetailViewModelFactory(
private val id: Long,
private val tipo: String,
private val msRepository: MSRepository
) : ViewModelProvider.NewInstanceFactory() {
@Suppress("UNCHECKED_CAST")
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
return DetailViewModelFactory(id, tipo, msRepository) as T
}
}
bind() from factory { id: Long, entity: String -> DetailViewModelFactory(id, entity, instance()) }
,后者是先前报道的。
private var viewModelFactory: ( (Long, String) -> DetailViewModelFactory) by factory()
最佳答案
如果要检索工厂而不是实例,请使用 by factory2()
.
如果要检索实例,请使用 by instance(arg = M(42L, "whatever"))
.
关于android - 如何在kodein中使用带有两个参数的工厂绑定(bind)来恢复对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56435081/
我是一名优秀的程序员,十分优秀!