Usando onBackPressed () em fragmentos do Android
Eu estou trabalhando em um projeto e preciso usar o botão voltar em cada fragmento para navegar entre os fragmentos anteriores, eu tenho métodos escritos para fazer isso usando uma seta para trás na barra de ação, no entanto, eu quero ser capaz para usar a mesma funcionalidade no botão Voltar pressionado. Eu não quero usar a pilha de trás. Existe uma maneira de fazer isso?
EDITAR
Em vez de usar a pilha de trás, quero chamar o método anterior, quando o usuário clica no botão Voltar. Eu preciso usar o método gobackpressed dentro de fragmentos. Isso é possível? Espero que isso seja claro e conciso. Desculpas por qualquer confusão causada acima.
Voltar ao Anterior
public void gobackToPreviousFragment(String preFragmentTag, Fragment preFragment){
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.setCustomAnimations(R.animator.close_slide_in,R.animator.close_slide_out);
ft.show(preFragment);
//**BY REMOVING FRAGMENT, WHEN USER TRIES TO REVISIT, FRAGMENT IS BLACK**
ft.remove(fm.findFragmentByTag(Misc.currentContentFragmentTag));
ft.addToBackStack(null);
ft.commit();
Misc.currentContentFragmentTag = preFragmentTag;
createBar(preFragment);
}
Vá em frente
public void gotoNextFragment(String nextTag, Fragment nextFragment){
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.setCustomAnimations(R.animator.enter_slide_in, R.animator.enter_slide_out);
boolean newlyCreated = false;
if(nextFragment == null){
nextFragment = Fragment.instantiate(this, nextTag);
newlyCreated = true;
}
//hide current fragment
ft.hide(fm.findFragmentByTag(Misc.currentContentFragmentTag));
if(newlyCreated){
ft.add(R.id.content_frame, nextFragment, nextTag);
}
else{
ft.show(nextFragment);
}
ft.addToBackStack(null);
ft.commit();
Misc.currentContentFragmentTag = nextTag;
createBar(nextFragment);
}
É assim que eu navego para frente e para trás e gostaria de poder implementar o método go back no onBackPressed (). Isso faz sentido?