web-dev-qa-db-fra.com

'ViewModelProviders' est obsolète. Après la mise à niveau des extensions de cycle de vie: 2.1.0 à 2.2.0-alpha05

Android Studio -> Nouveau projet -> Choix "Activité à onglets".

Après la mise à niveau des extensions de cycle de vie de 2.1.0 vers 2.2.0-alpha05, ViewModelProviders est obsolète. Dans les cas simples, il peut être remplacé par "by viewModels ()" par exemple:

plHlFrModel = ViewModelProviders.of(this).get(PlHlFrModel::class.Java)

remplacé par:

private val plHlFrModel by viewModels<PlHlFrModel>()

Mais je ne sais pas comment remplacer celui-ci:

pageViewModel =  ViewModelProviders.of(this)
     .get(PageViewModel::class.Java).apply {
         setIndex(arguments?.getInt(ARG_SECTION_NUMBER) ?: 1)
      }

où et comment placer le bloc {} dans un formulaire "by viewModel"? Peut-être qu'il y a une autre façon?

3
Vsevolod
viewModel = ViewModelProviders.of(this).get(vm.class); // is deprecate

viewModel = new ViewModelProvider(this).get(vm.class); // is true
0
Meysam Keshvari