Android ViewPager不能调用onDetach / onDestroy / onDestroyView在容器中进行replace

我有一个FrameLayout容器,在其中我使用replace方法来放置一个片段,当从导航抽屉select一个项目。

getSupportFragmentManager().beginTransaction().replace(R.id.container, fragment, fragment.getFragmentTag()).commit(); 

我有一个其中有一个ViewPager的片段。 我有3个片段与ViewPager显示在一个选项卡布局。 当我从导航抽屉中select另一个项目时,带有ViewPager的片段将被replace,但片段内的片段不会被分离。 系统仅使用ViewPager onDetach / onDestroy等方法调用片段,而不调用其包含的片段的方法。

我正在使用FragmentPagerAdapter,我尝试使用FragmentStatePager适配器。 没有什么变化。 我正在使用默认的setOffscreenPageLimit(1);

我怎样才能得到我的ViewPager片段方法onDetach / onDestroy调用?

谢谢!

Solutions Collecting From Web of "Android ViewPager不能调用onDetach / onDestroy / onDestroyView在容器中进行replace"

你使用的是FragmentManager还是子Fragment Manager? 如果你在另一个Fragment中创build一个Fragment,并且你希望内部Fragment的行为类似于外层,那么你应该从外层的碎片中获得子碎片pipe理器,并使用它来创build内层碎片。 看到这个