J'écris actuellement une disposition de tiroir comme ma disposition principale, avec un FrameLayout intégré que j'utiliserai pour tenir chaque "page" quand un article sur le tiroir est cliqué dessus. Lorsque l'application démarre pour la première fois, un fragment initial s'affiche. D'autres fragments peuvent être ajoutés/remplacés plus tard, ce qui est correct, mais mon problème est que lorsque l'utilisateur clique sur le bouton de retour sur le tout premier "fragment initial", je ne veux pas que ce fragment particulier soit retiré de la mise en page. Actuellement, il est en train d'être supprimé et il affiche simplement une disposition de tiroir sans autre contenu (ce qui est logique). Je souhaite que l'application se ferme automatiquement si le fragment initial est le dernier et que le bouton Précédent est enfoncé, au lieu de supprimer ce fragment initial, puis après une autre pression, puis il se ferme.Empêche le dernier fragment d'être retiré du backstack
choses que j'ai pensé à faire:
- Ne pas ajouter le premier fragment au backstack. (Si je fais cela, je peux le comparer avec le nom de classe du fragment qui est une chaîne un peu plus longue, ou je peux utiliser une valeur booléenne pour une fois que le premier fragment a été placé (et non ajouté au backstack), le booléen qui permet aux fragments à ajouter.
- Redéfinition maintenant la fonction onBackPressed de l'activité
quelqu'un at-il un moyen suggéré de le faire ou peut penser à une meilleure façon? Merci
Je suggérerais la première option c'est-à-dire, ne pas ajouter le fragment au backstack – Krish
Je suggérerais de surcharger onBackPressed et de le faire seulement s'il y a des entrées dans la pile frsgment – EpicPandaForce