A
arkerone
Membre
- Inscrit
- 18 Juin 2011
- Messages
- 18
- Points
- 0
- #1
Bon voilà, comme promis je vous fais un petit tuto pour vous apprendre à revenir à l'activité principale d'une application à partir des autres activités .
Bon avant de commencer on va prendre un exemple, imaginons que l'on ait une application avec une barre d'action en haut avec un bouton "home" qui permet de revenir au menu principal de l'application. L'application se compose de plusieurs activités ( ou de fenêtre si vous préférez) , imaginons que l'on ouvre une première activité (on va l'appelée l'activité 1... oui très original ) à partir du menu principal, puis une seconde activité à partir de l'activité 1 (on l'appellera...devinez... roulements de tambour... l'activité 2 ) et imaginons maintenant que l'on souhaite revenir à notre activité principale à partir de l'activité 2. Vous allez me dire on a qu'a lancer à partir de l'activité 2 l'activité principale... c'est mal!!! :twisted:
En effet, si vous faite cela vous n'aura pas 3 activités lancées mais 4 :
Activité principale -> Activité 1 -> Activité 2 -> Activité principale
Il y aura donc une nouvelle activité principale de lancé. Le mieux serait de pouvoir revenir à la "vraie" activité principale sans passer par l'activité 2... mais comment faire...? Débrouillez vous :twisted: non je plaisante je vais vous expliquer ma méthode.
Bon tout d'abord, créons notre activité principale avec un bouton permettant d'ouvrir la première activité (vous trouverez le projet à la fin du tutorial) et ajoutons une action au bouton c'est à dire ouvrir l'activité 1:
Bon jusqu'ici rien de compliqué. Maintenant intéressons nous à l'activité 1. Nous allons ouvrir à partir de l'activité 1 la deuxième activité mais nous allons également nous intéresser au résultat de l'activité 2 lorsque celle-ci se termine pour cela nous allons lancer l'activité 2 avec la méthode startActivityForResult() et récupérer le code de retour de l'activité 2 avec la méthode onActivityResult(). Tout d'abord lançons l'activité 2 lorsque l'on clique sur le bouton :
Nous avons donc lancer l'activité 2 et nous lui donnons comme numéro 1000. Ensuite voyons comment récupérez le résultat de l'activité 2 lorsque celle-ci se termine :
Donc lorsque que l'activité 2 c'est à dire 1000 est terminé et si son code de retour est 1 on ferme l'activité 1 et on se retrouve donc à l'activité principale . Bien entendu vous pouvez récupérer des données provenant de l'activité 2 dans l'activité 1 grâce au paramètre "data" et des méthodes getIntExtra() , getDoubleExtra() etc...
J'espère que vous avez compris tout cela, maintenant voyons l'activité . Il suffit, lorsque l'on clique sur le bouton de fermer l'activité 2 et de mettre le résultat de retour comme ceci :
Et vous vous retrouverez à l'activité principale !!! J'espère que vous avez compris
CODE SOURCE
PS : désolé pour les fautes d'orthographes j'ai un peu la tête dans le c** vive les lendemains de soirées :lol:
Bon avant de commencer on va prendre un exemple, imaginons que l'on ait une application avec une barre d'action en haut avec un bouton "home" qui permet de revenir au menu principal de l'application. L'application se compose de plusieurs activités ( ou de fenêtre si vous préférez) , imaginons que l'on ouvre une première activité (on va l'appelée l'activité 1... oui très original ) à partir du menu principal, puis une seconde activité à partir de l'activité 1 (on l'appellera...devinez... roulements de tambour... l'activité 2 ) et imaginons maintenant que l'on souhaite revenir à notre activité principale à partir de l'activité 2. Vous allez me dire on a qu'a lancer à partir de l'activité 2 l'activité principale... c'est mal!!! :twisted:
En effet, si vous faite cela vous n'aura pas 3 activités lancées mais 4 :
Activité principale -> Activité 1 -> Activité 2 -> Activité principale
Il y aura donc une nouvelle activité principale de lancé. Le mieux serait de pouvoir revenir à la "vraie" activité principale sans passer par l'activité 2... mais comment faire...? Débrouillez vous :twisted: non je plaisante je vais vous expliquer ma méthode.
Bon tout d'abord, créons notre activité principale avec un bouton permettant d'ouvrir la première activité (vous trouverez le projet à la fin du tutorial) et ajoutons une action au bouton c'est à dire ouvrir l'activité 1:
Code:
S'il vous plaît,
Connexion
ou
S'inscrire
to view codes content!
Bon jusqu'ici rien de compliqué. Maintenant intéressons nous à l'activité 1. Nous allons ouvrir à partir de l'activité 1 la deuxième activité mais nous allons également nous intéresser au résultat de l'activité 2 lorsque celle-ci se termine pour cela nous allons lancer l'activité 2 avec la méthode startActivityForResult() et récupérer le code de retour de l'activité 2 avec la méthode onActivityResult(). Tout d'abord lançons l'activité 2 lorsque l'on clique sur le bouton :
Code:
S'il vous plaît,
Connexion
ou
S'inscrire
to view codes content!
Code:
S'il vous plaît,
Connexion
ou
S'inscrire
to view codes content!
Donc lorsque que l'activité 2 c'est à dire 1000 est terminé et si son code de retour est 1 on ferme l'activité 1 et on se retrouve donc à l'activité principale . Bien entendu vous pouvez récupérer des données provenant de l'activité 2 dans l'activité 1 grâce au paramètre "data" et des méthodes getIntExtra() , getDoubleExtra() etc...
J'espère que vous avez compris tout cela, maintenant voyons l'activité . Il suffit, lorsque l'on clique sur le bouton de fermer l'activité 2 et de mettre le résultat de retour comme ceci :
Code:
S'il vous plaît,
Connexion
ou
S'inscrire
to view codes content!
Et vous vous retrouverez à l'activité principale !!! J'espère que vous avez compris
CODE SOURCE
PS : désolé pour les fautes d'orthographes j'ai un peu la tête dans le c** vive les lendemains de soirées :lol: