Es ist nur einfach, wenn Sie eine Aktion A haben, und Sie machen 3 Fragmente wie B, C und Home_Fragment. Jetzt, wenn Sie in Fragment B oder C sind und drücken Sie die Taste zurück, die Sie weitergehen möchten Home_Fragment jedes Mal.
Dann müssen Sie nur noch die onBackPressed()
Methode in Aktivität A außer Kraft setzen und auch wenn Sie zu jedem Fragment zu springen, geben dann einen bestimmten TAG oder Namen, werden Sie dieses Fragment in Aktivität A. erkennen
ich geben werde die Beispiel, dass man leicht verstehen:
Wechsel von Aktivität A bis Fragment C
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new C_fragment(),"xyz").commit();
}
oder wenn Sie von Fragment B bewegen C fragmentieren, und auf der Rückseite drücken, möchten Sie auf Fragment D kommen, tun wie unten:
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");
}
});
Jetzt müssen Sie nur die onBackPressed() überschreiben Verfahren in Haupttätigkeit wie folgt:
@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();
}
}
u-Taste halten kann, wenn die Taste drückt, schaltet es automatisch auf hme Seite ... Intent i = new Intent (AccountActivity.this, ContactsActivity.class); startActivity (i); – shassss
"Aber ich möchte, wenn der Benutzer die Taste zurückdrückt, anstelle der vorherigen Aktivität, sollte App auf Home-Bildschirm gehen" - da es eher unwahrscheinlich ist, dass der * Benutzer * dies wollen wird, warum denkst du, das ist vertretbares Verhalten? – CommonsWare
Die Aktivität, die ich erwähne, ist der Player-Bildschirm eines Musik-Players. Ich möchte, wenn der Benutzer einen Song aus der Playlist auswählt, dann wird die App zu PlayerActivty gehen. Wenn die Zurück-Taste vom Player gedrückt wird, wird entweder zum Home-Bildschirm oder zu einer anderen App weitergeleitet, die der Benutzer zuvor geöffnet hat.Ich hoffe, ich habe die Frage erläutert. – reiley