Dolch/vermisstbindend java.util.map <java.lang.class <? Erweitert ViewModel>, Anbieter <viewModel >> kann ohne eine @-An
Posted: 09 Apr 2025, 03:21
So versuche ich, meine viewModelfactory < /code>: < /p>
bereitzustellen
bereitzustellen
Code: Select all
@Suppress("UNCHECKED_CAST")
@Singleton
class ViewModelFactory @Inject constructor(
private val viewModels: MutableMap
) : ViewModelProvider.Factory {
override fun create(modelClass: Class): T = viewModels[modelClass]?.get() as T
}
@Target(AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER)
@kotlin.annotation.Retention(AnnotationRetention.RUNTIME)
@MapKey
annotation class ViewModelKey(val value: KClass)
< /code>
Und so bin ich die ViewModelfactory < /code>: < /p>
@Suppress("unused")
@Module
abstract class ViewModelModule {
@Binds
internal abstract fun bindViewModelFactory(factory: ViewModelFactory): ViewModelProvider.Factory
@Binds
@IntoMap
@ViewModelKey(MainViewModel::class)
internal abstract fun mainViewModel(viewModel: MainViewModel): ViewModel
}
< /code>
Ich erhalte den folgenden Fehler während des Builds: < /p>
di/Injector.java:9: error: [Dagger/MissingBinding] java.util.Map