ViewPager片段未显示在嵌套片段中

时间:2015-01-24 10:49:35

标签: java android android-fragments

我有一个带导航菜单的活动(我正在使用android的NavigationDrawer类)。菜单有N个条目,每个条目对应活动中的一个Fragment。在活动创建时,我执行以下操作:

mFragment1 = new Fragment1();
mFragment2 = new Fragment2();
mFragment3 = new Fragment3();
...
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.add(R.id.frameLayout1, mFragment1);
transaction.add(R.id.frameLayout1, mFragment2);
transaction.add(R.id.frameLayout1, mFragment3);
...
transaction.hide(mFragment1);
transaction.hide(mFragment2);
transaction.hide(mFragment3);
...
transaction.commit();

然后我将mFragment1显示为show。{/ p>

当用户点击菜单时:

transaction.hide(mVisibleFragment);
mVisibleFragment = mFragmentN;
transaction.show(mVisibleFragment);
transaction.commit();

每个片段都包含ViewPager以及其他一些片段和标签标题。我使用FragmentStatePagerAdapter作为适配器并在onCreateView中构建寻呼机:

 pager.setAdapter(new MyFragmentStatePagerAdapter(getFragmentManager());

我只能看到第一个菜单ViewPager的内容(mFragment1最初显示过)。当我切换到另一个菜单片段时,我可以刷页面并查看所选的标签更改,但我自己无法看到页面。

任何人都可以指出我的错误,最重要的是,解释会发生什么?

1 个答案:

答案 0 :(得分:0)

我设法找到了我的错误。

我使用getFragmentManger()代替getChildFragmentManager()来创建ViewPager适配器。

希望我的解决方案可以帮助某人。