Ho provato a chiudere il frammento corrente usando Imagebutton.
Sono in Fragment-A e si trasformerà in Fragment-B quando clicco sul pulsante.
E quando clicco sul pulsante in Fragment-B, si trasformerà in Fragment-C e chiuderà Fragment-B.
Se faccio clic sul pulsante Indietro in Fragment-C, tornerà al Fragment-A.
Il codice che ho provato è come il seguente
camera_album = (ImageButton) view.findViewById(R.id.camera_album);
camera_album.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
closefragment();
Fragment fragment = FileBrowserFragment.newInstance(null, null, null) ;
MainActivity.addFragment(LocalFileBrowserFragment.this, fragment) ;
}
});
private void closefragment() {
getActivity().getFragmentManager().beginTransaction().remove(this).commit();
}
Quando faccio clic sul pulsante Indietro in frammento-B, si trasforma in frammento-C.
Ma quando faccio clic sul pulsante Indietro su Fragment-C, non torna al Fragment-A. Torna allo sfondo vuoto. Se voglio tornare a Fragment-A, devo fare di nuovo clic sul pulsante Indietro.
Quindi, sembra non chiudere il frammento corrente completo.
Come finire il frammento corrente come il pulsante Indietro di Android?
MainActivity.addFragment(LocalFileBrowserFragment.this, fragment)
??. devi aggiungere il frammento al backstak e fare lo stesso pop di conseguenza