如何使用选项卡和打印示例替换ActionBarsherlock中标签使用的片段



我的问题看起来与此相似。但是,总的来说,这更多:让我尝试解释一下:我正在使用TabSadapter和ViewPager使用ActionBarsherlock。我已经用自己的片段替换了所有片段,现在我的一个片段中有一个按钮,当单击时,启动以下onclick处理程序:

public void onAcceptSelected() {
    SherlockFragment addFirstChildFragment = AddChildFragment.newInstance();
    getSupportActionBar().setTitle("The new title of the fragment here");
    FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
     ft.replace(R.id.pager, addFirstChildFragment);
     ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
     ft.addToBackStack(null);
     ft.commit();
}

问题是新片段中的以下方法:

public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
     View v = inflater.inflate(R.layout.fragment_childeditor, container, false);
    return v;
 }

并未导致实际提供新的可见布局:该标签的内容为空(例如,我看到一个Holo White主题为空标签)。

现在我有以下问题:

我的主要问题是:"我应该如何在标签中替换片段?"带有子问题:

  1. 我应该适应标签和打印示例的XML并与片段容器拟合?
  2. 使用标签和带有许多片段的ViewPager的最佳实践是什么?因为我想将选项卡用作主要导航,但我会有很多不同的片段。

它相当简单。只需将关联到标签关联的片段就像您替换其他片段的方式一样。

            Fragment donorpage = new DonorRegistrationPage(); // new fragment for the tab
            FragmentTransaction transaction = getFragmentManager().beginTransaction();
            transaction.replace(R.id.fragment_container, donorpage, "frag");
            transaction.addToBackStack(null);
            // Commit the transaction
            transaction.commit();

这应该替换标签的片段。

答案位于此问题的答案中ActionBarsherlock Tabs 多片段?

我问题的答案是:1.不,这不是必需的:我可以将它们添加给ProgramaticLlay。2.我可以将fragmentStacks用作上面链接中显示的示例。

最新更新