我已经在stackoverflow上搜索了这个问题并找到了这两个解决方案:
但是我的代码似乎是正确的,你可以在下面查看,我的代码的评论是在Portugues(巴西):
这是我的类MenuItemReceiver(是的,我使用BroadcastReceiver来显示我的片段),这已经可以显示我的片段内容但是当我尝试替换它时,旧片段会保留,新片段会出现在旧片段之上.
public void onReceive(Context context, Intent intent) {
//Fragment que será carregado, este fragment foi repassado pelo SlideMenuAdapter ao ter um item clicado
Serializable serializableExtra = intent.getSerializableExtra(CustomFragment.CUSTOM_FRAGMENT);
//Cast para CustomFragment uma vez que devemos recupera-lo como Serializable, poderia ter dado cast direto, mas decidi manter assim para melhor entendimento do código
CustomFragment fragment = (CustomFragment) serializableExtra;
FragmentTransaction ft = slideMenuActivity.getSupportFragmentManager().beginTransaction();//Informa que estamos inicando uma transação nova
ft.replace(R.id.dashboard,fragment);
ft.addToBackStack(null);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.commit();
//Aplicamos as alterações permitindo que o …Run Code Online (Sandbox Code Playgroud)