Android 在片段和对话框片段之间共享 ViewModel?

Android share ViewModel between fragment and dialog fragment?

如何在dialog和dialogFragment之间共享同一个viewModel?我知道 viewModel 可以在 activity 范围内共享。但这对我来说太大了。

 private val model: SharedViewModel by activityViewModels()

不幸的是我没有项目导航组件。

  1. 使用childFragmentManager显示DialogFragment

  2. Fragment 内声明共享 ViewModel by

private val sharedViewModel: YourViewModel by viewModels()
  1. DialogFragment 中通过
  2. 声明 ViewModel
private val sharedViewModel: YourViewModel by viewModels(ownerProducer = { requireParentFragment() })