Android 碎片添加到Backback后未正确替换

Android 碎片添加到Backback后未正确替换,android,fragment,fragmenttransaction,Android,Fragment,Fragmenttransaction,我的活动中有5个片段。 片段A是默认片段 所有片段中有滑动菜单切换其他4个片段。 所以我只想在backbackback中添加片段A。。所以 当从A调用片段B/C/D/E时,A将被添加到backbackback 现在从片段B开始,我从菜单抽屉中选择片段C。而不是把它添加到后台。现在按下后退按钮,我可以看到我的默认片段是正确的。但是,当我再次尝试从A更改任何片段B/C/D/E时,片段A仍然可见 fA->add to backstack->fB->fC->Back按钮->fA->add to back

我的活动中有5个片段。 片段A是默认片段

所有片段中有滑动菜单切换其他4个片段。 所以我只想在backbackback中添加片段A。。所以 当从A调用片段B/C/D/E时,A将被添加到backbackback

现在从片段B开始,我从菜单抽屉中选择片段C。而不是把它添加到后台。现在按下后退按钮,我可以看到我的默认片段是正确的。但是,当我再次尝试从A更改任何片段B/C/D/E时,片段A仍然可见

fA->add to backstack->fB->fC->Back按钮->fA->add to backstack…->fB。。。但碎片A在这里仍然可见。 有什么解决办法吗

这是我的密码:

FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    transaction.replace(R.id.flContainer, fragment, fragment.getClass().getSimpleName());

    if (isAdd) {

        transaction.addToBackStack(fragment.getClass().getSimpleName());
    }
    transaction.commit();
    drawerLayout.closeDrawer(Gravity.RIGHT);
这样做

if (fragment != null) {

        FragmentManager fragmentManager = getSupportFragmentManager();
        fragmentManager.beginTransaction()
                .addToBackStack(fragment.getClass().getSimpleName())
                .replace(R.id.frame_container, fragment).commit();

        mDrawerLayout.closeDrawer(mDrawerList);
    } else {
        // error in creating fragment
        Log.e("MainActivity", "Error in creating fragment");
    }
这样做

if (fragment != null) {

        FragmentManager fragmentManager = getSupportFragmentManager();
        fragmentManager.beginTransaction()
                .addToBackStack(fragment.getClass().getSimpleName())
                .replace(R.id.frame_container, fragment).commit();

        mDrawerLayout.closeDrawer(mDrawerList);
    } else {
        // error in creating fragment
        Log.e("MainActivity", "Error in creating fragment");
    }

需要将背景色应用于不同片段类的每个父布局。@PiyushGupta您是否建议对应用程序进行透支?这是一个性能问题。。永远不要那样做。我不是要他画应用程序。只需设置背景色!!如果你设置了背景色,你将透支应用程序。我想你不知道android上的透支是什么。查看我的博客:仍然是问题。为每个片段布局设置背景色后。需要将背景色应用于不同片段类的每个父布局。@PiyushGupta您是否建议对应用程序进行透支?这是一个性能问题。。永远不要那样做。我不是要他画应用程序。只需设置背景色!!如果你设置了背景色,你将透支应用程序。我想你不知道android上的透支是什么。查看我的博客:仍然是问题。为每个片段布局设置背景色后。需要将背景色应用于不同片段类的每个父布局。@PiyushGupta您是否建议对应用程序进行透支?这是一个性能问题。。永远不要那样做。我不是要他画应用程序。只需设置背景色!!如果你设置了背景色,你将透支应用程序。我想你不知道android上的透支是什么。查看我的博客:仍然是问题。为每个片段布局设置背景色后。