📅  最后修改于: 2023-12-03 15:38:54.050000             🧑  作者: Mango
在开发中,我们经常会遇到获取 FragmentManager 的需求,而使用如下代码获取 FragmentManager 时可能会出现 NullPointerException:
FragmentManager fm = getActivity().getSupportFragmentManager();
这是因为 getActivity() 方法返回的可能是 null,所以在使用前需要进行非空判断。但这并不是最优的解决方案。
在 Fragment 中获取 FragmentManager 应该使用 getChildFragmentManager() 方法,而不是 getActivity().getSupportFragmentManager() 方法。因为 getChildFragmentManager() 方法返回的 FragmentManager 只管理该 Fragment 内部的子 Fragment,更加安全可靠。
FragmentManager fm = getChildFragmentManager();
以上是关于如何解决 FragmentManager fm = getActivity().getSupportFragmentManager() 的介绍,希望能对你有所帮助。