cyberalternative Posted August 16, 2011 Share Posted August 16, 2011 Bonjour à tous. Je souhaite naviguer dans mon application avec le bouton BACK (flèche retour). Basiquement une activity en lance une autre qui vient se placer au dessus (TOP) de la pile d'historique (Stack) d'activities de telle sorte que le bouton BACK ramène à l'activity lancée précédemment. Je souhaite dépasser ce schéma et mettre 2 activities au même niveau comme ceci : Activity 1 --> Activity A + Activity B. Si "BACK" pressée dans Activity A -> retour à Activity 1 Si "BACK" pressée dans Activity B -> retour à Activity 1 Mon problème est le suivant : C'est l'activity A qui lance obligatoirement l'activity B : quand je presse "BACK" dans l'activity B je reviens à l'activity A alors que je souhaite revenir à l'activity 1. J'ai recherché des solutions avec les flags de mon intent (lors du lancement de l'activity B ) mais je n'ai pas réussi à résoudre mon problème. En vous remerciant. Link to comment Share on other sites More sharing options...
Twin Posted August 31, 2011 Share Posted August 31, 2011 Tu as tenté de setter le flag "FLAG_ACTIVITY_NO_HISTORY" au lancement de l'activité A ? Si tu le set (en lançant A, pas B), l'activité A se terminera dès que tu passeras sur B et le bouton back te rammènera donc sur Activity 1. L'inconvénient est que cela stoppe l'activité A. Mais si ça n'est pas gênant pour ton appli ça pourrait être une solution. Link to comment Share on other sites More sharing options...
cyberalternative Posted August 31, 2011 Author Share Posted August 31, 2011 Bonjour. J'avais tenté cela sur l'activité B et je comprends maintenant pourquoi ça ne fonctionnait pas. Si j'ai bien compris A n'a pas d'historique donc quand on clique sur "retour" sur B on revient à l'activité précédente à A. Le souci c'est que cette solution assez génante pour mon appli. Je testerai quand même cela dit pour apporter plus d'éléments de réponse. Merci à toi ! Link to comment Share on other sites More sharing options...
Twin Posted August 31, 2011 Share Posted August 31, 2011 De rien, j'ai eu le même genre de problème sur mon appli. :) Link to comment Share on other sites More sharing options...
cyberalternative Posted September 2, 2011 Author Share Posted September 2, 2011 Apparemment "NO_HISTORY" ne fonctionne pas chez moi : - Je démarre l'activity A - Je démarre l'activity B avec "NO HISTORY" (via un bouton sur l'activity A) - Je relance l'activity A (via un bouton sur l'activity B ) et je clique sur le bouton "BACK" --> cela m'amène à l'activity B :( Nota : C'est un TabActivity parent qui s'occupe de lancer les activity A et B. Pour être plus précis c'est même un "GDTabActivity" (greendroid). Link to comment Share on other sites More sharing options...
Alocaly Posted September 3, 2011 Share Posted September 3, 2011 J'ai peut-etre mal compris, mais il me semble que pour faire ce que tu veux, il suffit d'appeler la méthode 'finish' sur ton activité 'A' quand elle appelle ACtivité B ( et inversement ). Comme ca, l'activité B va s'ouvrir, l'activité A se fermera ( donc disparaitra de la pile d'activité ), et un back sur B te ramenera à celui qui a appelé A. Il me semble que c'est la solution pour ce genre de probleme ? Ca te semble convenir ? Emmanuel / Alocaly Link to comment Share on other sites More sharing options...
cyberalternative Posted September 9, 2011 Author Share Posted September 9, 2011 Salut, le problème avec finish(), c'est que ça supprime les "données" de l'activity (je passe de l'activity A à l'activity B avec un bouton "switch" (ou "toggle")). Est-il judicieux d'overrider la méthode onBackpressed() pour ce cas particulier ? Merci :). Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.