L'arrière de l'écran bouton sur la barre d'action
J'essaie d'afficher une Back button
sur le Action bar
pour déplacer la page précédente/activité ou à la page principale (ouverture).
Et je ne peux pas le faire.
mon code.
ActionBar actionBar = getActionBar();
actionBar.setHomeButtonEnabled(true);
le code est dans onCreate
.
- Utilisation: getSupportActionBar().setDisplayHomeAsUpEnabled(true);
InformationsquelleAutor Dany Maor | 2013-03-28
Vous devez vous connecter pour publier un commentaire.
eh bien, ce est simple de montrer bouton de retour
et vous pouvez personnaliser l'arrière de l'événement à onOptionsItemSelected
Je pense que
onSupportNavigateUp()
est la plus Simple et la meilleure façon de le faire, vérifiez les étapes ci-dessous. L'étape 1 est nécessaire, l'étape deux autres.Étape 1 montrant bouton retour: Ajouter cette ligne dans
onCreate()
méthode pour montrer bouton de retour.L'étape 2 de la mise en œuvre de cliquez sur retour: Remplacer cette méthode
c'est ça que vous avez terminé
OU à l'Étape 2 Alternative: Vous pouvez ajouter des méta-l'activité dans le fichier de manifeste comme
Edit: Si vous n'êtes pas à l'aide de
AppCompat
Activité, alors n'utilisez passupport
word, vous pouvez utiliserGrâce à @atariguy pour le commentaire.
onOptionsItemSelected
solutions, mais a échoué à le faire.getActionBar().setDisplayHomeAsUpEnabled(true);
@Override public boolean onNavigateUp(){ finish(); return true; }
La magie qui se passe dans
onOptionsItemSelected
.getActionBar().setDisplayHomeAsUpEnabled(true);
dans votre onCreateMethod d'abord pour montrer bouton de retourthis.onBackPressed();
méthode lorsque l'utilisateur clique sur le bouton retour.Solution officielle
Ajouter ces deux extraits de code à votre Activité
ajouter des méta-données et parentActivity à manifester pour soutenir inférieur sdk.
Référence ici:http://developer.android.com/training/implementing-navigation/ancestral.html
Ajouter ces lignes dans onCreate()
et dans onOptionItemSelected
Espère que cela va vous aider..!
Essayer ce code, estime que si vous avez besoin de la touche retour.
Sur votre
onCreate
méthode add ():Tout en définissant dans l'
AndroidManifest.xml
le parent de l'activité (l'activité qui sera appelé une fois sur le bouton précédent de la barre d'action est pressé):Dans votre
<activity>
définition sur le Manifeste, ajoutez la ligne:Je sais que je suis un peu en retard, mais a été en mesure de résoudre ce problème en suivant les docs directement.
Ajouter les méta-données de la balise à
AndroidManifest.xml
(pour que le système sache)Ensuite, activez l'arrière (haut) bouton dans votre
MainActivity
Et, vous serez tous ensemble!
Source: Développeur Android Documentation
Je sais que le ci-dessus sont nombreuses solutions utiles, mais cette fois, j'ai lu cet article (actuelle d'Android Studio 2.1.2 avec sdk 23) certains de la méthode ci-dessus ne fonctionne pas.
Ci-dessous est ma solution pour la sous-activité est MapsActivity
Tout d'abord, vous devez ajouter parentActivity dans
comme ceci :
Deuxièmement, assurez-vous que votre sous-Activité s'étend
AppCompatActivity
, pasFragmentActivity.
Troisième, remplacer
onOptionsItemSelected()
méthodeEspère que cela va vous aider!
Pour atteindre cet objectif, il y a simplement deux étapes,
Étape 1: Allez à
AndroidManifest.xml
et ajouter ce paramètre dans le<activity>
tag -android:parentActivityName=".home.HomeActivity"
Exemple:
Étape 2: Dans
ActivityDetail
ajouter votreaction
pour la page précédente/activitéExemple:
Essayer ce,
Dans votre onCreate()
Et pour clickevent,
dans la méthode onCreate écriture
et c'est le fichier xml-
et dans styles.xml changer de
c'est tout ce que nous avons à faire.
C'est simple et fonctionne pour moi, très bien
ajouter ceci à l'intérieur onCreate() la méthode
ajouter ceci à l'extérieur oncreate() la méthode
J'ai Résolu de cette façon
mon code de travail pour retourner à l'écran.
Il pourrait être trop tard pour répondre, mais j'ai plus courte et la plus fonctionnelle de la solution, à mon avis.
Manifest.xml
Ajouter le code ci-dessous dans la fonction onCreate:
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Puis remplacer:
@Override
public boolean onOptionsItemSelected(MenuItem item){
onBackPressed();
return true;
}