To tylko proste, jeśli masz aktywny A i zrobić 3 fragmenty, takie jak B, C i Home_Fragment. Teraz, jeśli jesteś w części B lub C i naciśnij przycisk Wstecz, który chcesz przenieść Home_Fragment za każdym razem.
Potem trzeba tylko zastąpić metodę aktywności A onBackPressed()
a także kiedy przeskoczyć do dowolnego fragmentu, a następnie podać konkretną TAG lub nazwę, można uznać, że fragment aktywności A.
jestem dając przykładem, który można łatwo zrozumieć:
Przejście od A do aktywności Fragment C
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new C_fragment(),"xyz").commit();
}
lub jeśli jesteś w ruchu z fragmentu B z fragmentem C, a na tylnej prasy, chcesz przyjść na Fragment D, zrobić jak poniżej:
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
getActivity().getSupportFragmentManager().beginTransaction()
.add(R.id.container, new C_frament(), "xyz").commit();
((ActionBarActivity) getActivity()).getSupportActionBar().setTitle("Fragment C");
}
});
Teraz trzeba tylko przesłonić onBackPressed() metoda główna działalność w następujący sposób:
@Override
public void onBackPressed() {
FragmentManager fragmentManager =getSupportFragmentManager();
if (((C_fragment) getSupportFragmentManager().findFragmentByTag("xyz")) != null
&& ((C_fragment) getSupportFragmentManager().findFragmentByTag("xyz")).isVisible()) {
Fragment fragment = new Home_Fragment();
fragmentManager.beginTransaction()
.replace(R.id.container, fragment)
.commit();
getSupportActionBar().setTitle("Home fragment ");
} else {
super.onBackPressed();
}
}
możesz zachować przycisk po naciśnięciu przycisku automatycznie przechodzi na stronę hme ... Intent i = new Intent (AccountActivity.this, ContactsActivity.class); startActivity (i); – shassss
"Ale chcę, gdy użytkownik naciśnie przycisk Wstecz, zamiast poprzedniego działania, aplikacja powinna przejść do ekranu głównego" - ponieważ jest raczej mało prawdopodobne, że * użytkownik * będzie tego chciał, dlaczego uważasz, że jest to uzasadnione zachowanie? – CommonsWare
Aktywność, o której wspomniałem, to ekran odtwarzacza muzyki. Chcę, gdy użytkownik wybierze utwór z listy odtwarzania, a następnie aplikacja przejdzie do PlayerActivty. Ale gdy przycisk powrotu jest naciśnięty przez odtwarzacz, przepływ zostanie przeniesiony do ekranu głównego lub do innej aplikacji, którą użytkownik otworzył wcześniej.Mam nadzieję, że wyjaśniłem to pytanie. – reiley