Сценарий имеет Shared ViewModel (SharedViewModel
) для моей активности (родитель) и фрагментов (дочерние) связи.
Последовательность действий выглядит следующим образом:
- Нажатие кнопкина FragmentA запускает метод
viewmodel.replace(fragment: Fragment, tag: String)
В модели представления,
replaceFragment(fragment: Fragment, tag: String? = null) {
????
}
Активность получает данные от viewmodel в
viewmodel.replaceFragment.observe{
//this will recieve the data from step 2
// Here FragmentA will be replaced by FragmentB
//Here I need the two data (fragment, tag), but receives the fragment or tag
}
Обратите внимание на ???на шаге 2 я хочу отправить данные fragment: Fragment
и tag: String
из viewmodel
в Activity
через LiveData, но он может отправлять только одну переменную за раз.
Мне нужно передатьдве переменные разных типов от viewmodel до активности, использующие LiveData
.
Я надеюсь, что может быть какое-то решение этой проблемы
Пожалуйста, помогите мне относительно этой проблемы.