GetChildFragmentManager () и библиотеки поддержки

Я использую getChildFragmentManager() в приложении, которое компилируется против уровня API 19, при этом минимальный SDK установлен равным 14.

getChildFragmentManager() был введен в API 17, поэтому устройства, работающие на уровнях API 14, 15 или 16, будут бросать NoSuchMethodError при NoSuchMethodError метода.

Я просмотрел все другие вопросы StackOverflow по этой проблеме, но ни один из них, похоже, не ответил на этот вопрос: есть ли способ заставить метод getChildFragmentManager() работать на уровне pre-API устройств 17? Если да, то как?

Этот метод, похоже, не включен в библиотеки поддержки v4 или v13. Я пробовал чистые сборки с библиотеками поддержки v4 и v13, но это, похоже, не решает проблему.

Solutions Collecting From Web of "GetChildFragmentManager () и библиотеки поддержки"

Есть ли способ заставить метод getChildFragmentManager () работать на уровне pre-API устройств 17? Если да, то как?

Используйте backport из фрагментов из пакета поддержки Android ( android-support-v4.jar , android.support.v4.app.Fragment ).

Этот метод, похоже, не включен в библиотеки поддержки v4 или v13.

Да, это, на FragmentActivity , базовый класс Activity вам нужно использовать для использования backport.

Он находится в классе Fragment из backport, для управления дочерними фрагментами этого фрагмента.

Я пробовал чистые сборки с библиотеками поддержки v4 и v13, но это, похоже, не решает проблему.

Либо вы не изменились на FragmentActivity на Fragment , или ваши JAR-библиотеки поддержки стали старыми. Ниже приведен пример проекта, демонстрирующего использование FragmentActivity для Fragment и его getChildFragmentManager() .

Вместо этого вы можете попробовать SupportFragmentManager:

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