android - Android在片段和对话框片段之间共享ViewModel?
问题描述
如何在对话框和对话框片段之间共享相同的视图模型?我知道 viewModel 可以在活动范围内共享。但这对我来说范围太大了。
private val model: SharedViewModel by activityViewModels()
不幸的是,我没有项目导航组件。
解决方案
用来
childFragmentManager
显示DialogFragment
声明
ViewModel
内部共享Fragment
private val sharedViewModel: YourViewModel by viewModels(ownerProducer = { this })
- 内部
DialogFragment
声明ViewModel
由
private val sharedViewModel: YourViewModel by viewModels(ownerProducer = { requireParentFragment() })
推荐阅读
- javascript - On click strike off items and move those items to the bottom of the list
- jquery - 如何在 HTML 中调整图像大小
- java - 如何将变量的名称及其在 Java 中的类型作为输出?
- graphviz - 将 graphviz 集成到 pandoc
- xaml - 如何防止 OnToggled 处理程序在视图单元格中触发?
- git - Git在独立分支之间切换
- javascript - 选择另一张幻灯片后如何暂停视频(Slick.js 和 VideoJS)
- python - Python脚本不会下载带有附件的HTML电子邮件
- tkinter - pyinstaller的exe无法生成图像pydotplus(graphviz)windows10
- security - 我可以安全地使用带有 curl 的免费代理吗