В чем разница между ViewModelProviders и классом ViewModelProvider? - PullRequest
0 голосов
/ 21 января 2019

Я видел два класса с похожим именем, ViewModelProviders и ViewModelProvider.Кто-нибудь может объяснить, в чем разница между этими классами?какой класс фактически обеспечивает ViewModel?

1 Ответ

0 голосов
/ 21 января 2019

ViewModelProviders (принадлежит артефакту Maven android.arch.lifecycle: extensions) - это класс из пакета android.arch.lifecycle, который содержит служебные методы для ViewModelStore class и возвращает вам объект класса ViewModelProvider, когда вы используете из него метод of().

Таким образом, вы можете рассматривать его как оболочку для библиотечного класса для ViewModelProvider.

С другой стороны, ViewModelProvider (принадлежит артефакту Maven android.arch.lifecycle: viewmodel) - это класс, который предоставляет ViewModels для области действия,Так что по умолчанию ViewModelProvider для Activity или Fragment можно получить из ViewModelProviders класса.

Так что да!это основной класс, который обеспечивает базовую логику для вашего ViewModel, но вам нужно получить его из ViewModelProviders, который возвращает вам этого класса , чтобы получить ViewModel из.

Надеюсь, я дал понять!

...