Android 恢复活动时重叠的片段

Android 恢复活动时重叠的片段,android,layout,android-fragments,activity-lifecycle,Android,Layout,Android Fragments,Activity Lifecycle,我的android应用程序有问题,我正在用android STUDIO IDE开发。 当我把应用程序放在后台几分钟,或者被系统杀死,或者我混合了片段的不同布局时,情况就差不多了。 我在下面放了一张照片: 我已经尝试过多种方法,如果你也有其他人写的话。先谢谢你 super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final ViewPager pager = (Vie

我的android应用程序有问题,我正在用android STUDIO IDE开发。 当我把应用程序放在后台几分钟,或者被系统杀死,或者我混合了片段的不同布局时,情况就差不多了。 我在下面放了一张照片:

我已经尝试过多种方法,如果你也有其他人写的话。先谢谢你

super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final ViewPager pager = (ViewPager) findViewById(R.id.pager);
        pager.setAdapter(new MyPagerAdapter(getSupportFragmentManager()));

        actionBar = getActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        ActionBar.TabListener tl = new ActionBar.TabListener() {
            @Override
            public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) {

            }

            @Override
            public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
                pager.setCurrentItem(tab.getPosition());
                actionBar.setSelectedNavigationItem(tab.getPosition());
            }

            @Override
            public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {

            }
        };

        String label1 = getResources().getString(R.string.label1);
        ActionBar.Tab tab;
        tab = actionBar.newTab();
        tab.setText(label1);

        tab.setIcon(R.drawable.download);


        //tab.setIcon(R.drawable.data);
        tab.setTabListener(tl);
        actionBar.addTab(tab);

        String label2 = getResources().getString(R.string.label2);
        tab = actionBar.newTab();
        tab.setText(label2);
        tab.setIcon(R.drawable.search);


        tab.setTabListener(tl);
        actionBar.addTab(tab);

        String label3 = getResources().getString(R.string.label3);
        tab = actionBar.newTab();
        tab.setText(label3);
        tab.setIcon(R.drawable.television);

        tab.setTabListener(tl);
        actionBar.addTab(tab);

图像:

所以问题是在onCreate中添加了一个片段。导航到片段B后,您的活动进入后台。在某些情况下,正如你所知,安卓可以杀死你的后台活动,并迫使它在前台重新创建自己。因此,您的活动使用片段B(它进入后台时的最后一个状态)重新创建自己,并添加片段A,因为调用了onCreate。您可以通过在onCreate中执行savedinstancestate检查来解决此问题。

请发布片段代码和活动代码,特别是onCreate(…)和onResume(…)方法。对于包含片段的活动,是的,可能是MainActivity。。。阅读最上面的答案,把注意力集中在答案中的“重叠”上……我不太明白!你能解释一下吗?