@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
Ich habe einen Adapter, in dem ich zwei Listen habe. Eine Liste ist für InvestorsList , in der er mit der Liste der Investoren geliefert wird, und die andere Liste wird als InvestorListFull...
Ich verwende die Spring -Boot -Kriegsdatei, um eine Webanwendung aufzurufen. Die Serverstiefel einwandfrei. Wenn ich die URL im Browser öffne, erhalte ich diese Ausnahme in den Spring -Boot...
Ich möchte so etwas wie Folgendes machen, aber ich möchte wissen, ob es eine elegantere Möglichkeit gibt, dies ohne die Paarklasse zu tun. Die Paarklasse existiert nicht mehr, also müsste ich meine...