Запитання з тегом «android-viewmodel»

3
AndroidViewModel проти ViewModel
З впровадженням бібліотеки компонентів архітектури Android, було введено кілька нових класів, серед яких AndroidViewModelі ViewModel. Однак у мене виникають труднощі з'ясувати різницю між цими двома класами. Документація коротко описується AndroidViewModelнаступним чином : Відомо про контекст програми ViewModel Я ціную стислість, але що саме це означає? Коли ми маємо обрати для …

21
ViewModelProviders застаріло в 1.1.0
Переглядаючи документи Google для ViewModel, вони показують наведений нижче зразок коду, як отримати ViewModel: val model = ViewModelProviders.of(this).get(MyViewModel::class.java) При використанні останньої залежності android.arch.lifecycle:extensions:1.1.1такого класу немає ViewModelProviders. Перехід до документації для ViewModelProviders, я побачив коментар , кажучи: Цей клас застарілий на рівні API 1.0.0. Використовуйте ViewModelProvider.AndroidViewModelFactory Проблема полягає в тому, що …

4
Спостереження LiveData з ViewModel
У мене є окремий клас, в якому я обробляю отримання даних (зокрема, Firebase), і я зазвичай повертаю з нього об’єкти LiveData та оновлюю їх асинхронно. Тепер я хочу, щоб повернуті дані зберігались у ViewModel, але проблема полягає в тому, що для отримання зазначеного значення мені потрібно спостерігати за об’єктом LiveData, …

2
Використовуйте viewLifecycleOwner як LifecycleOwner
У мене є фрагмент: class MyFragment : BaseFragment() { // my StudentsViewModel instance lateinit var viewModel: StudentsViewModel override fun onCreateView(...){ ... } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) viewModel = ViewModelProviders.of(this).get(StudentsViewModel::class.java) updateStudentList() } fun updateStudentList() { // Compiler error on 'this': Use viewLifecycleOwner as the LifecycleOwner viewModel.students.observe(this, …

1
Що таке ViewModelStore та viewModelStoreOwner?
Я дуже розгублений через цю нову версію програми ViewModelProvider (ViewModelProviders застарілий) Як і з новими змінами, є і нові Конструктори (вихідний код). №1 public ViewModelProvider(@NonNull ViewModelStoreOwner owner) { this(owner.getViewModelStore(), owner instanceof HasDefaultViewModelProviderFactory ? ((HasDefaultViewModelProviderFactory) owner).getDefaultViewModelProviderFactory() : NewInstanceFactory.getInstance()); } №2 public ViewModelProvider(@NonNull ViewModelStoreOwner owner, @NonNull Factory factory) { this(owner.getViewModelStore(), factory); } …

1
Проблема ViewPager2 / Tabs зі станом ViewModel
Я дотримуюся схеми MVVM - це означає, що у мене є ViewModel для кожного фрагмента. Я додав дві вкладки, використовуючи ViewPager2. Мій адаптер виглядає так: @Override public Fragment createFragment(int position) { switch (position) { case 0: return new MergedItemsFragment(); case 1: return new ValidatedMergedItemsFragment(); } return new MergedItemsFragment(); } Вкладки …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.