Navegação e backstack de fragmentos do Android
Eu tenho uma barra de cabeçalho (tipo como menu) e 4 fragmentos (MAIN, A, B, C) a partir do qual o principal deve ser 'principal / raiz' fragmento de backstack.
O problema que eu tenho é quando o usuário via menu vai, por exemplo, MAIN> A> B> C. Se eu simplesmente usar backstack ele vai na ordem inversa que eu não quero. Preciso de voltar botão para voltar a principal, não importa como o usuário navegou para um desses 3.
Meu código atual (que está errado, sai do aplicativo quando não está em MAIN e o fragmento atual é trocado de outro fragmento não-MAIN) é assim:
private void SwitchFragment(Fragment pFragment)
{
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.main_fl_fragmentcontainer, pFragment);
if (_CurrentFragment == _Frag_Main)
ft.addToBackStack(null);
ft.commit();
_CurrentFragment = pFragment;
}