Я пытаюсь инициализировать viewmodel во Fragment, но каждый раз, когда я хочу передать интерфейс в конструкторе viewmodel, он выдает ошибку Невозможно создать экземпляр класса ViewModel
Также у меня нет проблем в kotlin-kapt или в любых аннотациях жизненного цикла
вот мой класс ViewModel
class SettingsViewModel (
var settingsView: SettingsView
) : ViewModel(){ }
и вот мой фрагмент, где я хочу инициализировать модель представления
class SettingsFragment : Fragment(), SettingsView {
var viewmodel :SettingsViewModel? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
viewmodel = ViewModelProviders.of(this).get(SettingsViewModel(this)::class.java)
val binding =
DataBindingUtil.inflate<FragmentSettingsBinding>(inflater, R.layout.fragment_settings, container, false)
.apply{}
return binding.root
}