IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Fragment vs Activity


Sujet :

Android

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 47
    Points : 34
    Points
    34
    Par défaut Fragment vs Activity
    Bonjour,
    je développe une petite appli histoire de me former.
    Le concepte meme d activity est assez floue je trouve, c est un ecran..Masi en fait ca peut etre un ensmble de fragments qui sont aussi des écrans...
    du coup je ne sais pas trop comment decider de la meilleure maniere de developper mon appli.

    je suis parti sur une activity qui lance un fragment suivant le resultat remonté par le fragment courant, j utilise la bibliotheque android.support.v4.widget.DrawerLayout pour avoir mon drawer a gauche.

    Je pense même utiliser un headless fragment avec un setRetainInstance() pour "stocker" mes infos ou faire tourner mes requetes http en background...

    à votre avis est ce que je me plante completement et je devrais faire des activity bien distinctes en sauvegardant l etat de mes activity, les données (pas grand chose au passage) en sqllite ...
    je sais pas trop

    Merci

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2011
    Messages : 216
    Points : 139
    Points
    139
    Par défaut
    bonjour,

    je vais tenter de répondre clairement (et sans trop me tromper).

    une activity c'est une fenêtre, qui contient des vue, des fragments,...

    un fragment contient des vue, moi je le vois comme un groupe de vue.

    l'avantage d'un fragment est qu'il peut être utilisé plusieurs fois en le codant une seule fois, petit exemple:

    dans mon application, je vais avoir plusieurs fois des radio bouton, un textview, et un bouton qui vont être identiques.

    donc, ces éléments je vais les mettre dans un fragments.

    j'aurais donc un fragment qui aura des radio bouton, un textview, et un bouton.

    dans mes activity, quand je vais devoir mettre ces radio buton, textview et bouton, plutôt que mettre chacune de ses vue dans mon activity, je vais mettre mon fragment.

    comme ça, je n'ai pas besoin de refaire le code pour afficher ces éléments NI le code pour les traitements (listener clic bouton,...), je le fait une fois et c'est tout.

    j’espère avoir été assez clair (pas évident a l’écrit).

    pour la sauvegarde de l'état des activity, si c'est juste conserver les valeur affichée (texte d'un textview...) et les avoir si tu reviens sur ton activity, android le fait tout seul.
    si c'est pour les passer a ton autre activity il faut les mettre dans l'intent grâce au setextra.
    si c'est pour les conserver pour une prochaine utilisation de l'application et qu'il n'y a pas grand chose, il vaut mieux passer par des sharedpreferences que par une bdd.

    voilou.

    si je suis pas assez clair n’hésite pas a demander.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 47
    Points : 34
    Points
    34
    Par défaut
    Merci pour ta réponse, surtout les sharedpreferences je connais pas , je suis novice en la matiere.
    J ai bien vu a quoi servaient les fragments dans les problemes de fragmentations (j ai un fragment qui envoit vers un autre pour les smartphone par exemple, ou les 2 en mm temps pour les tablettes) , ça c est tres simple a comprendre,
    je pense que ce que je ne comprends pas c est pourquoi on développe une appli avec plusieurs Activity plutôt que des fragments ...

    A mon sens ça se vaut largement

  4. #4
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    L'activity *EST* l'application au sens "desktop" du terme.

    Il faut voir chaque activity comme des applications indépendantes qui s'appellent mutuellement (par le biais des Intent).

    L'"application" (au sens d'android) est un "package" qui regroupe des activity, des services, des receivers, etc...


    Prenons l'exemple de la bibliothèque d'images... ("Gallerie") Celle-ci va avoir au moins deux activité indépendantes: le browsing des images (affichage en thumbnails), et l'affichage des images (une image à la fois).

    Si une application possède une image, elle peut simplement lancer un intent ACTION_VIEW avec l'url de son image, et, magie d'android, la Gallerie sera lancée, avec l'activité d'affichage des images.

    Si une application veut récupérer une image, elle peut simplement utiliser un intent ACTION_PICK avec comme type "image", et hop, la Gallerie d'android se lancera avec les thumbnails. Sauf que ce sera dans une version "selection".

    Du coup, notre application Gallerie a au moins 2 activités indépendantes, et probablement 2 fragments (le passage de l'un à l'autre dépendant de l'Intent, ou d'un appui long, ou autre) pour l'affichage des thumbnails.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

Discussions similaires

  1. BroadcastReceiver, fragment vers activity
    Par alex8276 dans le forum Android
    Réponses: 3
    Dernier message: 17/06/2015, 21h20
  2. Lancer une Activity dans un Fragment ?
    Par L'Atreide dans le forum Android
    Réponses: 2
    Dernier message: 10/03/2013, 00h21
  3. Mettre un fragment dans une activity
    Par Matf4ke dans le forum Android
    Réponses: 15
    Dernier message: 12/07/2012, 11h58
  4. menu dans Activity contenant fragment
    Par l-amoureu dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 23/04/2012, 10h14
  5. Tabhost, Fragment et Activity
    Par kingconv dans le forum Android
    Réponses: 0
    Dernier message: 11/02/2012, 13h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo