Android action de la barre de bouton home
J'ai mis ma barre d'action comme mais rien ne se passe lorsque je clique sur la maison de bouton.
Les deux options ci-dessous sont activées et donc ne devrait-il pas aller à la maison de l'activité automatiquement?
ab.setHomeButtonEnabled(true);
ab.setDisplayHomeAsUpEnabled(true);
Barre D'Action
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
final String[] activities;
Resources res = getResources();
activities = res.getStringArray(R.array.activities);
ActionBar ab = getActionBar();
ab.setHomeButtonEnabled(true);
ab.setDisplayHomeAsUpEnabled(true);
ab.setTitle(R.string.app_name);
ab.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
ab.show();
/** Create an array adapter to populate dropdownlist */
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getBaseContext(), android.R.layout.simple_spinner_dropdown_item, activities);
/** Setting dropdown items and item navigation listener for the actionbar */
getActionBar().setListNavigationCallbacks(adapter, navigationListener);
/** Enabling dropdown list navigation for the action bar */
getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
return true;
}
- Code de vérification dans ce lien, il sera utile. Lien pour le code
InformationsquelleAutor | 2013-04-22
Vous devez vous connecter pour publier un commentaire.
Que d'autres personnes l'ont dit, le comportement ne se produit pas automatiquement, vous devez lui dire où aller.
Cependant, j'ai besoin d'ajouter une autre réponse, car les réponses sont tous rupture Android les lignes directrices de conception - Retour != La maison. Voir la documentation
Ce que vous voulez vraiment faire, c'est quelque chose le long des lignes de ce:
Qui vous amène à l'activité parent, plutôt que de simplement passer par la pile de retour. J'ai aussi ajouté la
Intent.Flag
pour effacer la pile de retour, il est utile d'avoir lorsque vous allez à une maison de l'activité et peut arrêter la pile de retour d'entrer dans la confusion pour les utilisateurs en utilisant le " Up " boutononBackPressed
devrait être l'exception (et oui, il est parfois valable) plutôt que la règle, mais toutes les autres réponses traiter cela comme la solution courante, donc m'en soulignant ce point dans ma réponse. Une application que généralement a des écrans sans une stricte position dans la hiérarchie serait l'enfer pour naviguer. Si cela se produit souvent au sein de votre application, je suggère de modifier votre flux d'INTERFACE utilisateur.Vous devez également vous assurer que votre Application ne sait pas quoi faire quand il est pressé:
android.R.id.home
dans le contexte de android activités?Nous avons à définir des méta-données dans notre activité enfant dans AndroidManifast.xml fichier comme par donnée officielle document:
Il n'est pas nécessaire de définir des méta-données si la version 4.1 ou plus, et vous devez activer votre barre d'action bouton home comme vous l'avez fait dans votre code. Pas besoin d'utiliser le bouton de retour de code et il fonctionne très bien avec mon application android: Helper+
Vous avez besoin de définir ce qui se passe ici:
Vous pouvez atteindre cet objectif en utilisant ci-dessous une méthode bien qu'il existe beaucoup de façons de le faire.
mettre cette ligne à l'intérieur de votre
onCreate
remplacer la méthode
onSupportNavigateUp
dans votre activitéAjouter ces lignes dans votre code: