首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ViewPager中的FragmentTransaction

ViewPager中的FragmentTransaction
EN

Stack Overflow用户
提问于 2017-09-28 19:51:43
回答 1查看 180关注 0票数 2

我有一个带有两个碎片的查看器。我想用3个不同的片段替换每个片段。我该怎么做呢?另外,在当前片段中单击按钮后,我可以使用新的片段列表更改整个ArrayList吗?

这就是我所做的。

代码语言:javascript
复制
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View v = inflater.inflate(R.layout.fragment_healthy_mode, container, false);

    swipeLeft = v.findViewById(R.id.leftSlide);
    swipeRight = v.findViewById(R.id.rightSlide);

    pageArray = new ArrayList<Fragment>();

    pageArray.add(new Female());
    pageArray.add(new Male());

 healthyModeAdapter = new HealthyModeAdapter(getFragmentManager(), pageArray);

    viewPager = (ViewPager) v.findViewById(R.id.healthyModeViewPager);
    viewPager.setAdapter(healthyModeAdapter);


// I want to replace female n male fragment with 

    pageArray.add(new EctoBodyFemale());
    pageArray.add(new EndoBodyFemale());
    pageArray.add(new MesoBodyFemale());

    pageArray.add(new EctoBodyMale());
    pageArray.add(new EndoBodyMale());
    pageArray.add(new MesoBodyMale());
EN

回答 1

Stack Overflow用户

发布于 2017-09-28 20:01:49

ViewPager支持ViewFragment的操作。如果我理解正确,您希望每个页面每个3个子组件都是静态的,在这种情况下,您有两个选择:

使用嵌套片段,为将包含子片段的每个页面创建一个Fragment。并将这些父片段用作提供给分页视图的片段

请注意,不推荐使用嵌套片段,因为它们已被证明存在错误,可能会影响性能。因此,我建议您采用View方法,创建一个定义片段的xml,并在膨胀它之后将其直接提供给ViewPager。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46468437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档