我正在使用一个自定义 viewpager,其中 Listfragment 加载了FragmentPagerAdapter。每个 ListFragment 代表一个双面板布局,其中每个列表项将一些其他片段加载到框架布局(右面板)。
这是最佳做法吗?
我正在使用一个自定义 viewpager,其中 Listfragment 加载了FragmentPagerAdapter。每个 ListFragment 代表一个双面板布局,其中每个列表项将一些其他片段加载到框架布局(右面板)。
这是最佳做法吗?
简单的答案是...
您不能在片段内添加片段。
更新
相反,您可以做的是...使用PagerAdapter
并设置其中有两个片段的视图。
简短的
PagerAdapter
是的父类,FragmentPagerAdapter
所以你需要制作扩展 pageradapter 的适配器参考这个链接你会有一个想法,
你需要看@the instantiateItem
,这个方法负责生成视图,所以你需要膨胀并返回其中有两个片段的视图。
我现在没有工作示例,但您可以通过PagerAdapter
Android支持库现在还支持嵌套片段,因此您可以在 Android 1.6 及更高版本上实现嵌套片段设计。
要嵌套片段,只需在要添加片段的片段上调用getChildFragmentManager() 。这将返回一个 FragmentManager,您可以像通常从顶级活动中一样使用它来创建片段事务。例如,下面是一些从现有 Fragment 类中添加片段的代码:
Fragment videoFragment = new VideoPlayerFragment();
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
transaction.add(R.id.video_fragment, videoFragment).commit();