外观
为什么在 Fragment 中使用 getChildFragmentManager() 而不是 getFragmentManager()?
标准回答
选哪个 FragmentManager,取决于你要管理的是“我的孩子”,还是“和我同一层的页面”。
- childFragmentManager 管理当前 Fragment 内部的子 Fragment。
- parentFragmentManager 管理包含当前 Fragment 的那一层。
- 选择依据是 UI 层级和返回栈归属。
通俗例子
一个首页 Fragment 里面又放了几个标签页,里面的子 Fragment 用 childFragmentManager;切换首页本身则由包含首页的那一层管理。
易混淆点
不是所有地方都必须换成 childFragmentManager;旧 getFragmentManager 的替代要看实际层级。
参考资料
内容来源
- Android · AI Agent 知识手册 · 原条目
1.2.3