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 :

Architecture pour les Activity


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 55
    Par défaut Architecture pour les Activity
    Bonjour,

    Dans mon application, j'ai remarqué que je fais des choses assez récurrente dans le "onCreate", notamment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    webServiceManager = WebServiceManager.getInstance(this);
    infosSession = InfosSession.getInstance();
    errorManager = ErrorManager.getInstance();
    TAG = this.getLocalClassName();
    Log.d(TAG, "onCreate");
    setContentView(R.layout.account);
    Il vas aussi y avoir la gestion des menus et sans doute d'autre choses auxquelles j'ai pas encore pensé.

    Donc je me suis dit qu'il aurai été intéressant de créer une classe "MainActivity" où on implémenterai toutes ses chose récurrentes.
    Et toutes nos activity hériteraient de "MainActivity".

    J'aurais voulu avoir votre avis la-dessus.

    Merci.
    Drlord.

  2. #2
    Membre confirmé Avatar de Rappunzell
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Novembre 2007
    Messages : 93
    Par défaut
    Oui, dans ta classe MainActivity, tu créé une méthode init() dans laquelle tu fais tous tes traitements récurrents.

    Il ne te restera qu'à faire hériter tes autres activités de celles ci et d'appeler la méthode init() dans les onCreate().

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 55
    Par défaut
    Effectivement, c'est la solution que j'ai en tête pour le moment.
    Par contre, j'aurais bien voulu donner des paramètres à mon activity lors de sa création par exemple le "layout" et sur ce point je sèche un peu car pour lancer une activity on passe par un startActivity...

  4. #4
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Mais dans l'Intent que tu utilises pour lancer l'activité, tu peux lui passer un Bundle, que le onCreate prend en argument.
    Tu peux rajouter des "extras" à ce Bundle aussi
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 55
    Par défaut
    Tout a fait raison sur ce point, j'y avait pas pensé.

    Ce sont des pratiques que vous utilisez dans vos développements?

  6. #6
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Soit je passe par un Bundle dans le cas d'une communication 1=>1, soit je passe par des SharedPreferences dans le cas de communication X<=>X.

    C'est là, autant s'en servir !
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

Discussions similaires

  1. Activation du port 9300 pour les machines distant
    Par boulmaneinfo dans le forum RedHat / CentOS / Fedora
    Réponses: 6
    Dernier message: 06/07/2011, 14h56
  2. Réponses: 4
    Dernier message: 24/12/2010, 12h31
  3. Réponses: 7
    Dernier message: 07/12/2010, 10h01
  4. activer mod_proxy pour les requetes ajax
    Par xtaze dans le forum Apache
    Réponses: 1
    Dernier message: 17/05/2006, 17h45
  5. Architecture pour les objets d'un jeu
    Par Freakazoid dans le forum DirectX
    Réponses: 7
    Dernier message: 31/07/2004, 13h09

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