getChildFragmentManager()和支持库

我在使用API​​级别19编译的应用程序中使用getChildFragmentManager() ,并将最小SDK设置为14。

getChildFragmentManager()在API 17中引入,因此在调用方法时,运行API级别为14,15或16的设备将引发NoSuchMethodError

我查看了所有关于这个问题的其他StackOverflow问题,但是他们都没有回答这个问题:有没有办法让getChildFragmentManager()方法在预API级别17的设备上工作? 如果是这样,怎么样?

该方法似乎不包含在v4或v13支持库中。 我已经尝试了与v4和v13支持库的干净版本,但似乎并没有解决这个问题。

Solutions Collecting From Web of "getChildFragmentManager()和支持库"

有什么办法让getChildFragmentManager()方法在设备API级别17上工作吗? 如果是这样,怎么样?

使用Android支持包( android-support-v4.jarandroid.support.v4.app.Fragment )中的片段backport。

该方法似乎不包含在v4或v13支持库中。

是的,在FragmentActivity ,您需要使用Activity基类来使用片段backport。

它位于backport的Fragment类中,用于pipe理该片段的子片段。

我已经尝试了与v4和v13支持库的干净版本,但似乎并没有解决这个问题。

要么你没有改变FragmentActivity Fragment backport,或者你的支持库JARs是旧的。 这是一个演示使用FragmentActivity Fragment backport及其getChildFragmentManager() 的示例项目 。

您可以尝试使用SupportFragmentManager:

 yourFragment = (YourFragment) getActivity().getSupportFragmentManager().findFragmentById(R.id.playListFragment)