Fragment1 содержит observer на livedata. из Fragment1 стартует DialogFragment в котором также получаю viewmodel, меняю livedata и закрываю фрагмент. observer не вызывается. В гугле пишут что должно работать. Есть у кого опыт?
ну а ты точно к той же ViewModel подписываешься?
val viewModel by viewModel<MyViewModel>() в дебаге частично видно что данные там есть
А что такое by viewModel? Делегат?
Да это встроенный делегат
Не встроенный, это с либой идёт
что - то я не вижу такого делегата, максимум могу через ReadOnlyProperty сделать
inline fun <reified T : ViewModel> ViewModelStoreOwner.viewModel( qualifier: Qualifier? = null, noinline parameters: ParametersDefinition? = null ): Lazy<T> { return lazy(LazyThreadSafetyMode.NONE) { getViewModel<T>(qualifier, parameters) } }
ну так делегат возвращает обычно копию viewModel, а вам нужно тот же
viewModels*
Обсуждают сегодня