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

Composants graphiques Android Discussion :

Deux classes et même layout ?


Sujet :

Composants graphiques Android

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 75
    Par défaut Deux classes et même layout ?
    Bonjour,

    J'aimerais savoir s'il est possible que deux classes utilisent le même Layout ?

    Exemple : on appuie sur un bouton qui exécute une deuxième classe mais celle-ci s'affiche sur le même Layout.

    Merci d'avance pour votre aide.

    PS: Si vous trouvez ceci très simple, c'est surement normal, mais pour moi non car je débute.

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Qu'est ce que tu entends par class ? Activity ?

    Si c'est bein ca , une activity peut utiliser n'importe quel layout disponible setContentView(R.layout.monLayout)Il n'ya donc aucun problème à ce qu'un layout soit utilisé par plusieurs activités.

    On peut par exemple imaginer une activité d'ajout d'information et une autre d'édition qui utiliseront le même layout representant le formulaire.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 75
    Par défaut
    Quand je met les deux Activities sur le meme Layout, ca force close

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    Le problème vient d'autre part, car il est tout a fait possible d'utiliser les layouts pour plusieurs Activities.
    Peux-tu nous montrer le code d'erreur (affiché dans le logCat) ?

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 75
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    07-05 09:52:57.110: E/AndroidRuntime(19485): FATAL EXCEPTION: main
    07-05 09:52:57.110: E/AndroidRuntime(19485): java.lang.NullPointerException
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at egingenierie.mfm.NowPlayingFragment.onCreateView(NowPlayingFragment.java:152)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:837)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1041)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:616)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1359)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:422)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:86)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.view.ViewPager.populate(ViewPager.java:453)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.support.v4.view.ViewPager.onAttachedToWindow(ViewPager.java:563)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.View.dispatchAttachedToWindow(View.java:9973)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2212)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2220)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2220)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2220)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2220)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2220)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2220)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1135)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2678)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.os.Handler.dispatchMessage(Handler.java:99)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.os.Looper.loop(Looper.java:137)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at android.app.ActivityThread.main(ActivityThread.java:4514)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at java.lang.reflect.Method.invokeNative(Native Method)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at java.lang.reflect.Method.invoke(Method.java:511)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760)
    07-05 09:52:57.110: E/AndroidRuntime(19485): 	at dalvik.system.NativeStart.main(Native Method)


    en gros quand j'appelle la deuxieme activity (selection d'un flux audio) ca doit afficher le nom ect ... Tout cela fonctionne tres bien sur deux layout different ( changement de page ) mais quand je met ca sur une seule page : boum
    Mais ca vient peutetre de ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		view = inflater.inflate(R.layout.radio_grid_fragment, container, false);
    j'utilise ca chaque fois

  6. #6
    Membre prolifique
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    10 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 10 245
    Par défaut
    Qu'est-ce qu'il y avait à la ligne 152 de NowPlayingFragment.java parce qu'une valeur est NULL.

    Tu dois probablement essayer de récupérer une View dans un layout qui ne possède pas cette View.

    Si c'est la ligne que t'as cité, fais des System.out sur :
    1. inflater
    2. R.layout.radio_grid_fragment
    3. container


    Si une des valeurs est null ça devrait l'afficher.

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 75
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    adLayout.addView(adView);
    a la ligne 152

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    280
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 280
    Par défaut
    Ca doit être adView qui doit être null... Comment tu l'obtiens ta adview ?

  9. #9
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 75
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    private AdView adView;
    private RelativeLayout adLayout;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    adView = new AdView(getActivity(), new AdSize(320,50), RadioApplication.AD_KEY);
    adLayout.addView(adView);
    je viens de voir aussi dans l'editeur GraphiqueLayout que ca m'affiche ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    The graphics preview in the layout editor may not be accurate:
    Different corner sizes are not supported in Path.addRoundRect

  10. #10
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    280
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 280
    Par défaut
    Si je suis la doc Google ça donne plutôt un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    adView = new AdView(this, AdSize.BANNER, MY_AD_UNIT_ID);
    Même si bon après le size banner fait bien 320x50...

  11. #11
    Membre prolifique
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    10 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 10 245
    Par défaut
    C'est adLayout qui doit être NULL dans ce cas.

    Ou alors l'erreur a changé de ligne.

    De toutes façon si tu affiches toutes les variables tu finiras par trouver le null normalement.

  12. #12
    Expert confirmé

    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
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par NameX Voir le message
    Ca doit être adView qui doit être null... Comment tu l'obtiens ta adview ?
    Non c'est forcément adLayout....
    Si c'était adView, l'appel de la fonction aurait marché et l'exception aurait été DANS la fonction...

  13. #13
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 75
    Par défaut
    J'ai trouve un autre moyen de parvenir a mes fins, mais vu le code que j'avais il n'y avait pas possibilite de faire ce que je voulais, donc j'ai fais un "mix" des deux activities.
    Merci encore

  14. #14
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    280
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 280
    Par défaut
    Citation Envoyé par nicroman Voir le message
    Non c'est forcément adLayout....
    Si c'était adView, l'appel de la fonction aurait marché et l'exception aurait été DANS la fonction...
    Ha ouai effectivement !

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/05/2012, 20h19
  2. [Hibernate2] Deux classes pour la même table
    Par bubulemaster dans le forum Hibernate
    Réponses: 0
    Dernier message: 13/01/2012, 11h17
  3. Deux classes CSS pour une même cellule d'un tableau
    Par bernidupont dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 04/05/2011, 21h34
  4. Utilisation de deux classes ayant le même nom
    Par Oosoos dans le forum Langage
    Réponses: 1
    Dernier message: 29/12/2010, 17h40
  5. Réponses: 1
    Dernier message: 30/08/2010, 12h15

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