FragmentTabHost视图中的片段丢失了onBackPressed Android?

时间:2014-11-18 09:27:57

标签: android android-fragments fragment-tab-host

我创建了一个应用程序。以下是解释问题之前的情况。

我有活动A,它有多个片段,如F1,F2,F3等。

现在对于F1片段,我已经实现了FragmentTabHost和三个片段F11,F12,F13片段视图。选项卡正常工作。

但今天我发现了一个问题。 说我在F1里面我展示了三个片段标签F11,F12,F13。用户可以在标签之间切换,并且工作正常。

问题是我按F键从F11转到片段F13。它成功显示F13片段。

然而,当我单击菜单上的Back Button时,它返回F11片段但显示空屏幕意味着F11视图未显示..

这是我实现FragmentTabHost的F1片段代码:

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.home_fragment, container,
                false);
        setHasOptionsMenu(true);
        // realtabcontent = (FrameLayout) rootView
        // .findViewById(R.id.realtabcontent);
        mTabHost = (FragmentTabHost) rootView
                .findViewById(android.R.id.tabhost);
        mTabHost.setup(getActivity(), getChildFragmentManager(),
                R.layout.home_fragment);
        mTabHost.setOnTabChangedListener(this);
        View tabView = createTabView(getActivity(), "Featured");
        spec = mTabHost.newTabSpec("featured").setIndicator(tabView);

        mTabHost.addTab(spec, FeaturedHomeTab.class, null);

        tabView = createTabView(getActivity(), "Top");
        spec = mTabHost.newTabSpec("top").setIndicator(tabView);
        mTabHost.addTab(spec, TopHomeTab.class, null);

        tabView = createTabView(getActivity(), "New");
        spec = mTabHost.newTabSpec("new").setIndicator(tabView);
        mTabHost.addTab(spec, NewHomeTab.class, null);
        onTabChanged("featured");
        return rootView;
    }

所以这是包含三个片段的主代码,当我从tabhost视图中的一个片段返回到前一个片段时消失。

可能有什么问题。请帮忙。

1 个答案:

答案 0 :(得分:0)

标签并不意味着参与时间导航(这是导航的用途),因为它们代表同一层次结构的内容。

如果是碎片,后导航通常会弹出后筹码。有一点需要注意,导航器不会首先弹出子(子)片段。因此,添加到Activity的片段将被移除,包括整个制表符片段(及其子片段)。