Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Android

    8 novembre 2016 à 14:00:11

    Bonjour,

    Je viens de commencer le cours, et je me retrouve bloqué sur le premier exercice, avec le lancer de dés. Dans la correction, on voit que le layout utilisé est un LinearLayout. Or, je ne trouve aucun moyen de changer le layout créé automatiquement par Android Studio de Relative en Linear.

    Le cours explique bien comment créer un nouveau Linear Layout, mais pas comment faire pour que le layout de l'activité main soit en linear...

    Ai-je loupé quelque chose ?

    Merci beaucoup

    • Partager sur Facebook
    • Partager sur Twitter
      8 novembre 2016 à 14:30:25

      Bonjour JeffC.Eger,

      Tu changes le nom dans le fichier xml dédié

      A+

      • Partager sur Facebook
      • Partager sur Twitter
      La chute n'est pas un échec, l'échec c'est de rester là où on est tombé!
        10 novembre 2016 à 23:44:37

        Bonjour,

        je suis nouvelle dans le domaine android, vous pouvez me donner des idées d'application sur android, c'est-à-dire des idées déjà faite.

        Merci d’avance.

        • Partager sur Facebook
        • Partager sur Twitter
          17 novembre 2016 à 9:42:55

          Salut Nadia,

          Inspire toi déjà des Mock des deux cours d'Android sur Openclassrooms, tu as des TP realizes, ça te donne une idée, des applications que tu peux faire avec Android. C'est une bonne base pour débuter.

          Bon courage.

          -
          Edité par dav79 22 novembre 2016 à 18:47:44

          • Partager sur Facebook
          • Partager sur Twitter
            22 novembre 2016 à 18:17:08

            Bonjour à tous,

            Je rencontre un problème sur le TP Afficher une liste Recyclerview dans la PARTIE 2.Le soucis avec cette liste RecyclerView, c’est que chaque item tiens sur une page.

            Le résultat que je devrais obtenir est le suivant :

            --Et moi j’obtiens ce résultat

                                 

            Voici le code de mon layout recyclerview



            Voici le code de ma vue item

            Voici quand je récupère l’objet recyclerview dans la classe MainActivity


             Je peux vous donner le code de ma classe MyAdaptater et MyViewHolder ci besoin (j'ai du les retirer, pour enregistré ma discussion sur le forum)

            J’ai pourtant fait il me semble la même chose que le formateur et pourtant j’ai cette grande différence de style et de thème ainsi que son gros espacement entre les items, impossible de le réduire

            J’aurai besoin de votre aide, pour comprendre et régler ce problème d’affichage.Je vous remercie déjà pour l’aide comme vous avez peum’apporté dans ces différentes discussions que j’ai ouvert sur ce forum.

            Encore merci par avance pour cette nouvelle aide.

            -
            Edité par dav79 22 novembre 2016 à 18:53:41

            • Partager sur Facebook
            • Partager sur Twitter
              25 novembre 2016 à 11:21:55

              Salut dav79 !

              J'ai eu le même problème, et la solution est toute simple : regarde du coté de ton layout_height du LinearLayout dans l'XML de ton item...

              • Partager sur Facebook
              • Partager sur Twitter
                25 novembre 2016 à 17:56:37

                Bonsoir, 

                J'avais une petite question technique. D'abord merci pour ce cours sur Android Studio, il m'a beaucoup aidé pour me lancer à faire ma propre appli :) 

                Sur un de mes layouts, j'ai fait un calendrier avec  initializeCalendar();, ça marche très bien, seulement j'aimerais bien pouvoir ouvrir un nouveau layout lorsque je clique sur un des jours du calendrier et enregistrer des informations dessus, que je pourrais voir en cliquant sur le jour. J'ai beau rélféchir, je ne sais pas comment faire parce qu'il n'y a pas de limite de layouts à créer puisqu'il y en a autant que de jours. Et de plus, je ne sais pas comment ouvrir un layout avec autre chose qu'un bouton, comment pourrait-on associé un bouton à un jour du calendrier, sachant qu'un jour se déplace sur l'interface ? 

                J'espère être claire! Merci d'avance pour votre aide !!

                • Partager sur Facebook
                • Partager sur Twitter
                  25 novembre 2016 à 20:10:18

                  Salut Bidouilleur-Numérique,

                  Je viens de tester ta solution. En effet, ça fonctionne bien.

                  Problème résolut!

                  Donc, merci encore.

                  -
                  Edité par dav79 25 novembre 2016 à 20:11:32

                  • Partager sur Facebook
                  • Partager sur Twitter
                    29 novembre 2016 à 12:15:04

                    Bonjour,

                    Moi j'ai deux petits ( gros !) soucis.

                    Mon processeur n'est pas compatible avec la virtualisation, en conséquence je ne peux pas utiliser l'émulateur.

                    Rien de grave, je devrais normalement pourvoir utiliser mon smartphone comme moniteur, mais ça ne marche pas non plus.

                    Une erreur s'affiche dans  Android Studio.

                    Pourtant, je suis bien en mode debug et tout semble correct dans les paramètres.

                    Je click sur Run, la fenêtre 'select deployement target' s'ouvre avec le message 'nothing to show' puis 'no device selected' quand je click sur ok.

                    et ensuite, tout reste figé, rien ne se passe.

                    Quelqu'un a t'il une solution ?

                    Cordialement,

                    Joël

                    • Partager sur Facebook
                    • Partager sur Twitter
                    Joël
                      29 novembre 2016 à 14:46:18

                      gatounet a écrit:

                      Bonjour,

                      Moi j'ai deux petits ( gros !) soucis.

                      Mon processeur n'est pas compatible avec la virtualisation, en conséquence je ne peux pas utiliser l'émulateur.

                      Rien de grave, je devrais normalement pourvoir utiliser mon smartphone comme moniteur, mais ça ne marche pas non plus.

                      Une erreur s'affiche dans  Android Studio.

                      Pourtant, je suis bien en mode debug et tout semble correct dans les paramètres.

                      Je click sur Run, la fenêtre 'select deployement target' s'ouvre avec le message 'nothing to show' puis 'no device selected' quand je click sur ok.

                      et ensuite, tout reste figé, rien ne se passe.

                      Quelqu'un a t'il une solution ?

                      Cordialement,

                      Joël


                      Commences par activer le mode développeur sur ton téléphone (Tapes 7 fois sur le numéro de build (ou de version) de ton téléphone dans paramètres -> a propos. Ensuite une l'option développement sera disponible dans la liste des paramètres, tu y vas et coches débogage usb...
                      • Partager sur Facebook
                      • Partager sur Twitter
                      En apprentissage continue....
                        29 novembre 2016 à 16:39:54

                        Merci pour la réponse, mais ça c'est déjà  fait, c'est du côté de Android studio que quelque chose ne va pas. Pas de solution pour le moment !

                        • Partager sur Facebook
                        • Partager sur Twitter
                        Joël
                          30 novembre 2016 à 16:10:02

                          Salut Gatonnet,

                          J'ai eu un problème similaire.

                          Est ce que ton téléphone s'affiche, dans la fenêtre Select deploiement target, si ce n'est pas le cas et que ton téléphone est connecté à ton pc, tu dois avoir un problème au niveau de ton driver, regarde ça et installe ce pilote, normalement ça devrait résoudre ton problème.

                          Driver usb pour android (adb : Android Debug Bridge)

                          https://www.geeek.org/la-solution-probleme-de-pilote-samsung-android-sous-windows-719.html

                          • Partager sur Facebook
                          • Partager sur Twitter
                            30 novembre 2016 à 17:48:40

                            Hello Dav79,

                            Merci pour ta réponse, le problème venait d'une mauvaise compréhension du programme.

                            J'attendais bêtement que mon android affiche la page automatiquement.

                            En fait, les applications tests étaient bien là, ajoutées à celles déjà en place sur le smartphone.

                            Bon et bien en route pour de nouvelles aventures maintenant.

                            Joël

                            • Partager sur Facebook
                            • Partager sur Twitter
                            Joël
                              9 décembre 2016 à 21:06:44

                               

                              Bonjour à tous,

                              Je rencontre un petit problème avec l’utilisation d’une liste Recyclerview. En effet j’ai un gros espacement entre les items. Le soucis est que le layout des items,je ne peux pas modifier la propriété layout_height du linearlayout qui par défaut est match_parent, parce que l’utilise un WebView du linearlayout. Android studio m’affiche cette erreur :

                              Placing a WebView in a parent element, that uses a wrap_content layout_height can lead to subtile bugs uses match_parent instead
                              (here wrap_content may not work,well with the Webview bellow)
                              The webview implemantation has certain performance optimisations which will not work if the view parent is using the wrap_content rather than match_content.
                              That load to subtile UI bugs.

                              Le screenshot avec l’espacement entre les items :

                               

                              Voici mon code :

                              Layout recyclerview

                               <?xml version="1.0" encoding="utf-8"?>
                              <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                                  xmlns:tools="http://schemas.android.com/tools"
                                  android:id="@+id/activity_main"
                                  android:layout_width="match_parent"
                                  android:layout_height="match_parent"
                                  android:paddingBottom="@dimen/activity_vertical_margin"
                                  android:paddingLeft="@dimen/activity_horizontal_margin"
                                  android:paddingRight="@dimen/activity_horizontal_margin"
                                  android:paddingTop="@dimen/activity_vertical_margin"
                                  tools:context="com.db.formation.android.v1.appafficharticles.MainActivity">
                                  <!--android:layout_alignParentTop="true">-->

                                  <android.support.v7.widget.RecyclerView
                                      android:id="@+id/rcvIdArticles"
                                      android:layout_width="wrap_content"
                                      android:layout_height="match_parent"
                                      android:layout_centerHorizontal="true"
                                      android:layout_centerVertical="false"
                                      android:orientation="vertical"
                                      >
                                  </android.support.v7.widget.RecyclerView>
                              </RelativeLayout>

                              Layout item

                              <?xml version="1.0" encoding="utf-8"?>
                              <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                                  android:id="@+id/idLenearparentItem"
                                  android:layout_width="match_parent"
                                  android:layout_height="wrap_content"
                                  android:orientation="vertical"
                                  android:background="@drawable/background_click_item"
                                  >
                                  <TextView
                                      android:id="@+id/txtIdTitleArticle"
                                      android:layout_width="match_parent"
                                      android:layout_height="wrap_content"
                                      android:layout_marginTop="15dp"
                                      android:layout_marginBottom="15dp"
                                      android:text="toto"
                                      android:lines="1"
                                      android:ellipsize="end"
                                      android:textAppearance="?android:attr/textAppearanceLarge"
                                      />
                                  <WebView
                                      android:id="@+id/wvIdContentArticle"
                                      android:layout_width="match_parent"
                                      android:layout_height="match_parent"
                                      android:layout_marginTop="30dp"
                                      />
                              </LinearLayout>


                              Configuration du recyclerview dans la classe MainActivity

                                      //Récupérer le recyclerview représentant les articles affichables à l'écran
                                      RecyclerView rcv = (RecyclerView) findViewById(R.id.rcvIdArticles);

                                      //Définir le positionnement du layout
                                      rcv.setLayoutManager(new LinearLayoutManager(this));


                                      //Définir une classe Adaptater représentant le contenu et la structure d'un article
                                      rcv.setAdapter( new MyAdaptaterArticle());

                              Y-aurait’il une solution pour contourner ce problème, excepté de créé un layout à part pour le WebView.

                              Merci par avances pour vos idées et vos solutions.

                              • Partager sur Facebook
                              • Partager sur Twitter
                                10 décembre 2016 à 2:57:27

                                Bonjour,

                                Je rencontre un petit problème quant à l’affichage des imageView.

                                Je le fais pour l'instant en WYSIWYG.

                                Je mets la ressources png dans le dossier drawable et ensuite j'insère l'imageView dans le layout et sélectionne l'image.

                                ça ne marche que sur la MainAcitvity, quand je créées d'autres activity j'ai bien le textView mais je vois pas les images contrairement à la main. 

                                merci.

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  12 décembre 2016 à 1:10:06

                                  Ok j'ai trouvé je vais pouvoir continuer.

                                  Dans le MOOC on parle d'étendre Activity mais en mettant AppCompatActivity ça fonctionne, certainement dû à la version.

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    12 décembre 2016 à 14:50:45

                                    Bonjour SalomonBris,

                                    Je rencontre un problème d’espacement anormal entre les items avec une liste recyclerview.

                                    Ce problème est seulement avec la version 4.3 Android Jelly Bean, quand je test avec mon Samsung Galaxy S3. Quand j’essaie avec ma tablette Galaxy tab3 (Android 4.4 Kitkat) ou un émulateur ça fonctionne bien.

                                    Le problème survient lorsque dans dans le layout item, j’inclut un WebView. J’ai changé la propriété layout_height à wrap_content. Pour que je puisse changer cette propriété, j’ai mis mon WebView dans un LinearLayout. Ca donne ça :

                                    <?xml version="1.0" encoding="utf-8"?>
                                    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                                        android:id="@+id/idLenearparentItem"
                                        android:layout_width="match_parent"
                                        android:layout_height="wrap_content"
                                        android:orientation="vertical"
                                        android:layout_marginTop="10dp"
                                        android:layout_marginBottom="10dp"
                                        android:background="@drawable/background_click_item"
                                        >
                                            <ScrollView
                                                android:layout_width="match_parent"
                                                android:layout_height="match_parent">
                                                    <TextView
                                                        android:id="@+id/txtIdTitleArticle"
                                                        android:layout_width="match_parent"
                                                        android:layout_height="wrap_content"
                                                        android:layout_marginTop="5dp"
                                                        android:layout_marginBottom="5dp"
                                                        android:lines="1"
                                                        android:ellipsize="end"
                                                        android:textAppearance="?android:attr/textAppearanceLarge"
                                                        />
                                            </ScrollView>
                                            <LinearLayout
                                                android:orientation="vertical"
                                                android:layout_width="match_parent"
                                                android:layout_height="match_parent">
                                                    <WebView
                                                        android:id="@+id/wvIdContentArticle"
                                                        android:layout_width="match_parent"
                                                        android:layout_height="match_parent"
                                                        android:layout_marginTop="30dp"
                                                        >
                                                    </WebView>
                                            </LinearLayout>
                                    </LinearLayout>


                                    Au départ la liste se charge bien sans espacement


                                    Mais dès que je fais défiler les items du haut vers le bas, le bug survient.

                                     


                                    Est-ce que vous auriez une solution fasse à ce problème, est-ce que quelqu’un aurait des idées ou des suggestions.

                                    Par avance, remercie pour votre aide.

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      31 décembre 2016 à 16:39:51

                                      bonjour,

                                      j'ai un soucis !! je veux faire  jouer deux image d'une led éteinte et  d'une autre led allumer, pour donner l'impression qu'une led clignote chaque seconde , je l'ai superposé  grace a

                                      RelativeLayout

                                      j'ai essayé de les mettre comme deux boutons mais j'arrive pas a avoir la combinaison souhaité , quelqu'un peut m'aider svp , sachant que je suis débutant , merci d'avance

                                       green_led_on.setVisibility(View.VISIBLE);
                                      green_led_off.setVisibility(View.GONE);

                                      -
                                      Edité par ahnouchedjamel 31 décembre 2016 à 20:53:11

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        2 janvier 2017 à 18:33:48

                                        Bonne et heureuse année 2017 à toute la communauté !

                                        Mon prénom est André. Je suis développeur d'application android. j'ai un  gros problème.  j'ai généré mon application avec adobe flash professionnel cc 2015. J'ai essayé de l'héberger sous google playstore mais l’application a été refusée car selon eux, la version d'open ssl du lecteur adobe air incluse dans l'application est obsolète

                                        alors quelle version d'adobe flash devrais je utiliser pour générér mon application ou simplement que devrais je faire?

                                        Merci
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          4 janvier 2017 à 3:14:54


                                           
                                          Bonjour à tous,

                                          Bonne année, à toute la communauté Openclassroom..

                                          Je suis actuellement sur l’activité de la partie 3 du Mooc Android.. Je rencontre un problème avec DOM. Je récupère d’abord, trois flux RSS que je convertis chacun en document xml de type org.w3c.dom.Document, pas de problème jusqu’ici. Ensuite je souhaite récupérer les nœuds Item des deux autres Document xml et les copier dans le premier Document xml, mais quand j’essaie de le faire avec la méthode appendChild, j’obtiens une exception de type DomException, avec le seul message Null.

                                          Voici un extrait de mon code

                                          for(int i=0;i<params.length;i++) {
                                          //Instancier une URL avec son adresse
                                          URL url = new URL(params[i]);

                                          //Constuire la connection HTTP
                                          HttpURLConnection connection = (HttpURLConnection) url.openConnection();

                                          //Convertir le flux en inputStream
                                          InputStream stream = connection.getInputStream();
                                          Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(stream);
                                          if(document != null){
                                          documentsXml[i] = document;
                                          }
                                          }
                                          NodeList list2 = documentsXml[1].getElementsByTagName("item");
                                          NodeList list3 = documentsXml[2].getElementsByTagName("item");
                                          NodeList racine = documentsXml[0].getElementsByTagName("channel");
                                          channel = (Element) racine.item(0);
                                          try {
                                          for (int i = 0; i < list2.getLength(); i++) {
                                          Element element = (Element) list2.item(i);
                                          if (element.getNodeType() == Node.ELEMENT_NODE) {
                                          channel.appendChild(element);
                                          }
                                          }
                                          }catch(DOMException e){
                                          Log.i("Element-xml", "Nb fils :" + channel.getChildNodes().getLength());
                                          e.getStackTrace();
                                          }

                                          Les flux sont passés en paramètres à la méthode doInBackground()

                                          Les documents sont stockés dans un tableau de type Document. Quand je fais du pas à pas enmode débogage, l’erreur survient, lorsque que la méthode appendChild est invoquée dans la boucle. L’objet list2 contient bien les nœuds item et le premier document xml documentXml[0] dans le nœud « channel » contient bien des nœuds enfants.

                                          Est-ce que c’est un problème, si les nœuds que je souhaite ajouter porte les mêmes noms, que certains nœuds enfants du nœud « channel ».En effet dans le nœud « channel », il y a déjà plusieurs nœud item, et les nœuds que j’essaie d’ajouter ont le nom item.

                                          Pourriez-vous m’aider, car je coince sur ce problème, je ne comprends pas l’exception DomException qui indique seulement null. Pourant channel n’est pas null, et les nœuds que j’ajoute au channel non plus.

                                          J’aurai besoin de vos lumières, merci par avance.

                                          Bonne années à tous.


                                          -
                                          Edité par dav79 4 janvier 2017 à 3:22:00

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            6 janvier 2017 à 19:05:30

                                            Bonjour ! 
                                            Comptant me lancer dans la programmation Android,  j'ai lu l'introduction du mooc et je me demandais si les 2 premières parties de Java suffisaient entièrement pour ce cours ? 

                                            D'autres bases sont-elles à avoir ? 


                                            Merci :) 
                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              10 janvier 2017 à 11:08:16

                                              Bonjour à tous. Ayant besoin, pour un TP de cours android partie 3 que je réalise, j'utilise des thread pour communiquer avec le site distant (Flux RSS). Actuellement, le site existe et la page s'ouvre sur chrom mais malheureusement qund je ping sur l'adresse je recois ce message

                                              "ping http://www.lemonde.fr/sport/rss_full.xml

                                              La requête Ping n’a pas pu trouver l’hôte http://www.lemonde.fr/sport/rss_full.xml. Vérifiez le nom et essayez à nouveau."
                                              Néanmoins il m'est actuellement impossible de metre une conexion et recevoir le flus RSS de la page sur android studio. Une exception est envoyée avec le message d'erreur : java.net.UnknownHostException: Unable to resolve host " http://www.lemonde.fr/sport/rss_full.xml": No address associated with hostname
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                11 janvier 2017 à 9:56:12

                                                Orguen a écrit:

                                                Bonjour ! 
                                                Comptant me lancer dans la programmation Android,  j'ai lu l'introduction du mooc et je me demandais si les 2 premières parties de Java suffisaient entièrement pour ce cours ? 

                                                D'autres bases sont-elles à avoir ? 


                                                Merci :) 

                                                Bonjour et désolé pour la réponse tardive. Mais effectivement les 2 premières parties sont plus que suffisantes pour apprendre Androïd.
                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                En apprentissage continue....
                                                  11 janvier 2017 à 17:56:07

                                                  D'accord ! Merci beaucoup pour cette réponse ! 😄
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    20 janvier 2017 à 12:35:00

                                                    Dans la question 5  du quizz du chapitre 2 :

                                                    Je cite "

                                                    Quels sont les noms des 3 couleurs principales que doit définir un designer utilisant le code “Material Design” pour son application ?"

                                                    Alors que dans la partie du cours traitant du Material design il est nullement cité qu'il y en a trois explicitement mais 2: ColorPrimary et colorAccent. On peut deviner colorPrimaryDark seulement par déduction/élimination.

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter

                                                    Null.

                                                      24 janvier 2017 à 17:58:37

                                                      Bonjour !

                                                      Je sais pas trop où poster ça, mais j'ai un probleme sur android studio. Quand j'essaye de lancer un émulateur android afin de tester mon application j'ai mon PC qui plante, écran bleu disant que le PC redémarre, et ça me le fait à chaque fois ! La virtualisation dans le BIOS est activée ! Quelqu'un aurait-il déjà eut le même problème (et encore mieux quelqu'un qui l'aurait déjà résolu ^^) ?  Mon pc est un Dell Inspiron ( les nouveaux ) avec windows 10 installé dessus ! 

                                                      Merci d'avance et bonne journée !

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        4 février 2017 à 13:42:57

                                                        Bonjour à tous,

                                                        Je suis à au TP du chapitre 3 et j'ai un petit soucis car je n'arrive pas à résoudre à la première étape:

                                                        l'application plantelorsque j'essaye d'exécuter ma tâche (HNQueryTask). avec la ligne :

                                                        task.execute();


                                                        Je pensais donc qu'il s'agissait d'une erreur de compatibilité dans la librarire mais je n'ai pas l'impression que ce soit ça. Je fournis le code la classe "MainActivity", et de l'adapter du RecyclerView.

                                                        MainActivity.java:
                                                        package io.capsulo.hacketnewsreader;
                                                        
                                                        import android.support.v7.app.AppCompatActivity;
                                                        import android.os.Bundle;
                                                        import android.support.v7.widget.LinearLayoutManager;
                                                        import android.support.v7.widget.RecyclerView;
                                                        
                                                        import com.oc.hnapp.android.HNQueryTask;
                                                        
                                                        public class MainActivity extends AppCompatActivity {
                                                        
                                                            private RecyclerView recyclerView; // recyclerView de notre interface
                                                            private HNQueryTask task; // Tâche qui s'exécute en arrière-plan pour téléchargez la liste d'articles
                                                        
                                                            @Override
                                                            protected void onCreate(Bundle savedInstanceState) {
                                                                super.onCreate(savedInstanceState);
                                                                setContentView(R.layout.activity_main);
                                                        
                                                                // Configuration of the recyclerView
                                                                recyclerView = (RecyclerView) this.findViewById(R.id.recyclerView);
                                                                recyclerView.setLayoutManager(new LinearLayoutManager(recyclerView.getContext()));
                                                                HNArticlesAdapter articlesAdapter = new HNArticlesAdapter();
                                                                recyclerView.setAdapter(articlesAdapter);
                                                        
                                                                // Creation et starting of the task
                                                                task = new HNQueryTask(articlesAdapter, 80, 1);
                                                                task.execute();
                                                            }
                                                        
                                                            @Override
                                                            protected void onDestroy() {
                                                                super.onDestroy();
                                                                task.cancel(true);;
                                                            }
                                                        }
                                                        


                                                        HNArticlesAdapter:

                                                        package io.capsulo.hacketnewsreader;
                                                        
                                                        import android.support.v7.widget.RecyclerView;
                                                        import android.util.Log;
                                                        import android.view.LayoutInflater;
                                                        import android.view.View;
                                                        import android.view.ViewGroup;
                                                        import android.widget.TextView;
                                                        
                                                        import com.oc.hnapp.android.HNArticle;
                                                        import com.oc.hnapp.android.HNQueryCallback;
                                                        
                                                        import java.util.ArrayList;
                                                        import java.util.List;
                                                        
                                                        /**
                                                         * Author : -
                                                         * Description: Classe qui s'occupera de gérer les cellules de notre recyclerView
                                                         */
                                                        
                                                        public class HNArticlesAdapter extends RecyclerView.Adapter<HNArticlesAdapter.HNViewHolder> implements HNQueryCallback {
                                                        
                                                            List<HNArticle> articleList = new ArrayList<HNArticle>();
                                                        
                                                            @Override
                                                            public int getItemCount() {
                                                                return  articleList.size();
                                                            }
                                                        
                                                            @Override
                                                            public void onArticlesReceived(List<HNArticle> article, boolean hasMore) {
                                                                this.articleList.addAll(article);
                                                                super.notifyDataSetChanged();
                                                            }
                                                        
                                                            @Override
                                                            public HNViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
                                                                LayoutInflater layoutInflater = LayoutInflater.from(parent.getContext());
                                                                View view = layoutInflater.inflate(R.layout.list_item, parent, false);
                                                                return new HNViewHolder(view);
                                                            }
                                                        
                                                            @Override
                                                            public void onBindViewHolder(HNViewHolder holder, int position) {
                                                                holder.display(articleList.get(position));
                                                            }
                                                        
                                                            public class HNViewHolder extends RecyclerView.ViewHolder {
                                                        
                                                                private final TextView textView;
                                                        
                                                                public HNViewHolder(View view) {
                                                                    super(view);
                                                                    textView = (TextView) view.findViewById(R.id.title);
                                                                }
                                                        
                                                                // Bind the data to the item view
                                                                public void display(HNArticle article) {
                                                                    textView.setText(article.title);
                                                                }
                                                            }
                                                        }
                                                        


                                                        Remarque: J'ai oubilié de votre donner les erreurs qui sont générés.

                                                        E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.monkeyPatchExistingResources
                                                        E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.pruneResourceCache
                                                        E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1



                                                        -
                                                        Edité par Saiyajin 4 février 2017 à 13:55:26

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter

                                                        Null.

                                                          4 février 2017 à 14:52:19

                                                          Salut,

                                                          Tu as coupé ta stacktrace un peu tôt. C'est ce qui suit le mot fatal exception qui nous intéresse pour comprendre pourquoi ton programme plante.

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            5 février 2017 à 20:05:30

                                                            Il n'y a rien de plus après. L'application se plante et se termine.

                                                            W/dalvikvm: threadid=12: thread exiting with uncaught exception (group=0x4118bac8)
                                                            E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
                                                            I/Process: Sending signal. PID: 8315 SIG: 9
                                                            Application terminated.



                                                            -
                                                            Edité par Saiyajin 5 février 2017 à 20:05:58

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            Null.

                                                            MOOC Android

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            • Editeur
                                                            • Markdown