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 :

Passer des données (variable, fonction..) à ma vue


Sujet :

Android

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut Passer des données (variable, fonction..) à ma vue
    Bonjour,

    Je cherche à passer un texte pour tester puis enfin une ArrayList de mon code JAVA sous Android Studio à ma vue (mes Layout).
    Cependant après plusieurs tutoriel je ne trouve pas comment faire.
    Pouvez-vous m'aider?

    Merci d'avance pour ceux qui m'aideront.

  2. #2
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Je ne comprend pas la question.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Enfaite, je développe une petite appli qui récupère une liste de musée depuis une API JSON.
    J'ai commencé le développement de tout ça.

    Mais Android Studio me met une erreur lors de la compilation :

    E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example....listemusee, PID: 8325
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example....listemusee/com.example.....listemusee.MainActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example....listemusee/com.example....listemusee.Musee}; have you declared this activity in your AndroidManifest.xml?
    ...
    ...
    ...
    ...
    etc..

    Je cherche tant bien que mal, mais je ne trouve pas d'où peut provenir cette erreur.
    L'application se lance et se coupe directement dans l'émulateur.

    Voilà mon code:

    Me Main Activity:
    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
     
    public class MainActivity extends AppCompatActivity {
     
        ListView List;
        //ArrayAdapter<Musee> museeListe = new ArrayAdapter<>();
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
            //List = (ListView) findViewById(R.id.listeMusee);
            //List.setAdapter(Musee.afficherText());
            //this.startActivity(List);
            //List = (ListView) findViewById(R.id.listeMusee);
            setContentView(R.layout.activity_main);
            Intent intent = new Intent(this, Musee.class);
            //intent.putExtra(Musee.afficherText(), R.id.listeMusee);
            intent.putExtra(Musee.afficherText(), R.id.textMusee);
            this.startActivity(intent);
     
        }
     
    }
    Ma classe qui gère ma liste de musée:

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
     
    public class Musee extends Activity {
     
        //@Test
     
        EditText message_text;
        public ArrayList<Musee> musees = new ArrayList<Musee>();
     
        private String datasetid;
        private String recordid;
        private String fields;
        private String periode_ouverture;
        private String nom_du_musee;
     
        //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
        public Musee() {
            this.datasetid = "datasetid";
            this.recordid = "recordid";
            this.fields = "fields";
            this.periode_ouverture = "periode_ouverture";
            this.nom_du_musee = "nom_du_musee";
        }
     
        //On appel la methode getMusee() pour récupérer les musées que nous renvoie l'api JSON
     
        public String getDataSetid() {
            return datasetid;
        }
     
        public String getRecordid() {
            return recordid;
        }
     
        public String getfields() {
            return fields;
        }
     
        public String getPeriode_ouverture() {
            return periode_ouverture;
        }
     
        public String getNom_du_musee() {
            return nom_du_musee;
        }
     
        public void setDataSetid(String datasetid) {
            this.datasetid = datasetid;
        }
     
        public void setRecordid(String recordid) {
            this.recordid = recordid;
        }
     
        public void setFields(String fields) {
            this.fields = fields;
        }
     
        public void setPeriode_ouverture(String periode_ouverture) {
            this.periode_ouverture = periode_ouverture;
        }
     
        public void setNom_du_musee(String nom_du_musee) {
            this.nom_du_musee = nom_du_musee;
        }
     
        public void add(ArrayList<Musee> musees) {
            //Ajouter tout ces attributs dans mon ArrayList
     
        }
     
        //test pour deboger
        public static String afficherText() {
            String texte;
            texte = ("toto");
            return texte;
        }
     
        /**public static listeDesMusees (ArrayList<Musee>) {
            String texte;
            texte = System.out.println("test");
            return ArrayList<Musee> musee;
        }*/
     
    }
    La classe ou je récupère les données de mon API:

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    public class ApiListeMusee {
     
        public static ArrayList<Musee> getMusees() {
     
            ArrayList<Musee> musees = new ArrayList<Musee>();
     
            try {
                String myurl= "Mon Api JSON";
     
                URL url = new URL(myurl);
                HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                connection.connect();
                InputStream inputStream = connection.getInputStream();
                /*
                 * InputStreamOperations est une classe complémentaire:
                 * Elle contient une méthode InputStreamToString.
                 */
                String result = InputStreamOperations.InputStreamToString(inputStream);
     
                // On récupère le JSON complet
                JSONObject jsonObject = new JSONObject(result);
                // On récupère le tableau d'objets qui nous concernent
                JSONArray array = new JSONArray(jsonObject.getString("musées"));
                // Pour tous les objets on récupère les infos
                for (int i = 0; i < array.length(); i++) {
                    // On récupère un objet JSON du tableau
                    JSONObject obj = new JSONObject(array.getString(i));
                    // On fait le lien sur les musées - Objet JSON
                    Musee musee = new Musee();
                    musee.setDataSetid(obj.getString("datasetid"));
                    musee.setRecordid(obj.getString("recordid"));
                    musee.setFields(obj.getString("fields"));
                    musee.setPeriode_ouverture(obj.getString("periode_ouverture"));
                    musee.setNom_du_musee(obj.getString("nom_du_musee"));
                    // On ajoute le musée à la liste
                    musee.add(musees);
     
                }
     
            } catch (Exception e) {
                e.printStackTrace();
            }
            // On retourne la liste des musées
            return musees;
        }
     
     
    }
    Si ça peut t'aider à m'aider.
    En espérant bien me sortir de ce problème.
    N'hésite pas non plus si tu vois des incohérence dans mon code.
    Merci d'avance pour l'aide apporter.

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

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

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    L'erreur est assez claire pourtant :
    have you declared this activity in your AndroidManifest.xml?
    Il faut donc que tu vérifies dans ton manifest si toutes tes activities sont bien présentent.

    Pourquoi avoir une activity qui dérive de AppCompatActivity et l'autre de Activity ?
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Oui, mais dans mon Manifest.xml je ne vois pas quoi changer ?
    C'est justement pour ça que j'ai mis cette partie de l'erreur, j'ai un doute.

    Voilà ce que j'ai dans mon Manifest.xml

    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example....listemusee">
     
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:supportsRtl="true"
            android:theme="@style/AppTheme">
            <uses-permission android:name="android.permission."/>
            <activity
                android:name=".MainActivity"
                android:label="@string/app_name"
                android:theme="@style/AppTheme.NoActionBar">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
     
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
        </application>
     
    </manifest>
    "Pourquoi avoir une activity qui dérive de AppCompatActivity et l'autre de Activity ? "
    Et bien le "AppCompatActivity" et l'extend de base pour le MainActivity.
    Pour le deuxième je voulais faire le lien entre mon activity principal (ma vue, celle qui va passer les données) et ma classe qui traite mon ArrayList.

  6. #6
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Musee.class n'a pas été déclarée comme Activity dans le manifest donc ca plante. Logique.
    Mais le pire c'est surtout que cette classe n'a pas à hériter de Activity (ou alors où sont les callbacks de base ? et il ne doit pas y avoir de constructeur).
    Il y a des problèmes de conception flagrants.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  7. #7
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Merci pour ton retour Hephaistos007.
    Oui effectivement la classe musee n'a pas à hériter de Activity.
    Je voulais au début faire passer les données de ma classe musee vers mon MainActivity pour afficher le tout (ce qui aurait été l'inverse).
    Du coup, que me recommanderais-tu ?
    J'ai supprimé l'héritage qu'il y avait entre ces deux classes.
    Mais j'ai toujours le même problème lors de la compilation.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Je me demander, chaque classe doit être une Activity ?
    Puisque j'ai juste besoin d'une Activity, le MainActivity selon moi pour afficher une liste ou mon tableau de musee.

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

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

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Une activity = un écran

    Donc toutes classes autres que celle gérant l'écran ne doit évidemment pas dériver d'activity
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre régulier
    Femme Profil pro
    Developpeur logiciel
    Inscrit en
    Juin 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 62
    Points : 74
    Points
    74
    Par défaut
    Je pense que comme dit precedemment tu as un soucis dans la compréhension globale de l'architecture d'android.

    Le dossier java comporte les activity --> une activity représente un écran (ce que l'utilisateur va afficher).

    Dans ce dossier tu peux cependant créer un sous dossier (faisons ça pour bien séparer les choses) qui comporte des classes. Ces classes sont totalement différentes d'une activity. Elles vont juste te permettre de faire des choses qui pourront ensuite être appelé dans ton activity par exemple.

    Petit exemple simple
    --> tu décides de faire une classe géante qui fait 20 methodes différentes ok.
    --> dans ton activity tu vas appeler ces méthodes de la classe uniquement. Une classe ne doit donc pas héritée de ton activity ! Ce n'est pas son enfant ! Ils ne sont pas de la même famille ! Ta classe va seulement te permettre d'appeler dans ton activity une methode X de ta classe.

    Tu comprends un peu le truc ?
    Là ce que tu fais dans ton activity c'est pas grand chose. C'est vraiment normal que ça plante.

  11. #11
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Merci pour vos retour grunk et noboxstyle.
    Je cherche à afficher mon ArrayList dans mon MainActivity dans une ListView.

    Voilà à quoi ressemble mon code actuellement.


    Mon MainActivity:

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.widget.ListView;
     
    import org.json.JSONArray;
    import org.json.JSONObject;
     
    import java.io.InputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.util.ArrayList;
     
     
    public class MainActivity extends AppCompatActivity {
     
        private ListView lv;
     
        //ArrayList<Musee> musee;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
            lv = (ListView) findViewById(R.id.ListView);
     
            new ApiListeMusee().getMusees();
        }
     
        public static ArrayList<Musee> getMusees() {
     
            ArrayList<Musee> musees = new ArrayList<>();
     
            try {
                String myurl= "https://opendata.paris.fr/api/records/1.0/search/?dataset=liste-musees-de-france-a-paris&rows=50";
     
                URL url = new URL(myurl);
                HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                connection.connect();
                InputStream inputStream = connection.getInputStream();
                /*
                 * InputStreamOperations est une classe complémentaire:
                 * Elle contient une méthode InputStreamToString.
                 */
                String result = InputStreamOperations.InputStreamToString(inputStream);
     
                // On récupère le JSON complet
                JSONObject jsonObject = new JSONObject(result);
                // On récupère le tableau d'objets qui nous concernent
                JSONArray array = new JSONArray(jsonObject.getString("musées"));
                // Pour tous les objets on récupère les infos
                for (int i = 0; i < array.length(); i++) {
                    // On récupère un objet JSON du tableau
                    JSONObject obj = new JSONObject(array.getString(i));
                    // On fait le lien sur les musées - Objet JSON
                    Musee musee = new Musee();
                    musee.setDataSetid(obj.getString("datasetid"));
                    musee.setRecordid(obj.getString("recordid"));
                    musee.setFields(obj.getString("fields"));
                    musee.setPeriode_ouverture(obj.getString("periode_ouverture"));
                    musee.setNom_du_musee(obj.getString("nom_du_musee"));
                    // On ajoute le musée à la liste
                    musee.add(musees);
     
                }
     
            } catch (Exception e) {
                e.printStackTrace();
            }
            // On retourne la liste des musées
            return musees;
        }
     
     
    }

    Ma classe Musee (qui n'a pas bouger):


    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     
    public class Musee {
     
        //@Test
     
        EditText message_text;
        //public ArrayList<Musee> musees = new ArrayList<Musee>();
     
        private String datasetid;
        private String recordid;
        private String fields;
        private String periode_ouverture;
        private String nom_du_musee;
     
        //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
        public Musee() {
            this.datasetid = "datasetid";
            this.recordid = "recordid";
            this.fields = "fields";
            this.periode_ouverture = "periode_ouverture";
            this.nom_du_musee = "nom_du_musee";
        }
     
        //On appel la methode getMusee() pour récupérer les musées que nous renvoie l'api JSON
     
        public String getDataSetid() {
            return datasetid;
        }
     
        public String getRecordid() {
            return recordid;
        }
     
        public String getfields() {
            return fields;
        }
     
        public String getPeriode_ouverture() {
            return periode_ouverture;
        }
     
        public String getNom_du_musee() {
            return nom_du_musee;
        }
     
        public void setDataSetid(String datasetid) {
            this.datasetid = datasetid;
        }
     
        public void setRecordid(String recordid) {
            this.recordid = recordid;
        }
     
        public void setFields(String fields) {
            this.fields = fields;
        }
     
        public void setPeriode_ouverture(String periode_ouverture) {
            this.periode_ouverture = periode_ouverture;
        }
     
        public void setNom_du_musee(String nom_du_musee) {
            this.nom_du_musee = nom_du_musee;
        }
     
        public void add(ArrayList<Musee> musees) {
            //Ajouter tout ces attributs dans mon ArrayList
     
        }
    }
    Là, je me demande si mon code est bon dans un premier temps.
    Ensuite comment je pourrais l'afficher dans mon ListView, ou l'id de mon ListView est ListView.

    Merci pour l'aide , Et oui noboxstyle, j'avais déjà fait des modifications sur certaines choses qui n'étaient pas cohérente dans mon code merci

  12. #12
    Membre régulier
    Femme Profil pro
    Developpeur logiciel
    Inscrit en
    Juin 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 62
    Points : 74
    Points
    74
    Par défaut
    Ta classe musée n'est pas bonne déjà.
    J'ai pas checké l'autre. Seulement survolé.
    Mais là en fait, tu essayes de faire un projet peut-être un peu trop complexe pour le moment.
    Tu as déjà fait du Java avant ?
    Parce que tu ne me sembles pas maitriser très très très bien la programmation orientée objet (avec constructeur etc.).

  13. #13
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Oui, je dev que en POO, et j'ai aussi déjà fait du JAVA.
    Mais qu'est ce qu'elle a ma classe "Musee" ?
    Ma classe "Musee" me sert à crée mes objet "musee" dans ma fonction "ApiListeMusee" .

  14. #14
    Membre régulier
    Femme Profil pro
    Developpeur logiciel
    Inscrit en
    Juin 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 62
    Points : 74
    Points
    74
    Par défaut
    Par exemple, ne crois-tu pas que ton constructeur ne serait pas mieux comme ça ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
        //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
        public Musee(String datesetid, String recordid, String fields, String periode_ouverture, String nom_du_musee) {
            this.datasetid = datesetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
        }

  15. #15
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Effectivement, tu as raison.
    J'ai surchargé ma classe "Musee" au début, sans réécrire mes paramètres dans mon constructeur.
    Mais ils ne sont pas utiliser comme ça, donc que je les mets ou pas, ça ne change rien.

  16. #16
    Membre régulier
    Femme Profil pro
    Developpeur logiciel
    Inscrit en
    Juin 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 62
    Points : 74
    Points
    74
    Par défaut
    tu avais mis des string tout de même. --> this.datasetid = "datasetid"; et sans paramètre au constructeur.
    Le constructeur est par défaut présent. il équivaut à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    public musée() {
    }
    Mais bref. Si tu dis que c'est ok pour toi, ca me va.

    Ensuite :
    Si le edittext n'est pas présent dans les getters and setters, c'est qu'il ne devrait pas se trouver dans cette classe .

    Et :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        public void add(ArrayList<Musee> musees) 
    {
            //Ajouter tout ces attributs dans mon ArrayList
     }
    Qu'est ce que ça fait là ça ? . Qu'est ce que tu comptes faire avec ça ? Et pourquoi dans ta classe qui fait office de bean ?

  17. #17
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    J'ai pas tout compris, moi j'attends aussi des réponses, je dois être mauvais c'est sûr.

    Ensuite, ça, je ne savais pas encore vraiment comment procéder, au début je voulais construire mon ArrayList dans ma classe "Musee" et la faire passer dans mon Activity, on m'a proposer de générer automatiquement cette classe, je l'ai fait au début.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void add(ArrayList<Musee> musees) 
    {
            //Ajouter tout ces attributs dans mon ArrayList
     }
    Si tu parles du "edittext" dans ma classe "Musee" il ne sert à rien.

    Mais tu peux peut-être m'aider, tu as l'air d'être compétent en JAVA et en Android.

  18. #18
    Membre régulier
    Femme Profil pro
    Developpeur logiciel
    Inscrit en
    Juin 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 62
    Points : 74
    Points
    74
    Par défaut
    Je ne dis pas que tu n'es pas compétent ! Loin de là !

    C'est un exellent projet, mais j'ai eu l'impression qu'en terme d'architecture et de se compréhension globale il y avait un soucis.
    Je ne peux pas coder le truc à ta place.
    J'essaie simplement de comprendre aussi si tu as déjà fait de l'android, ton niveau en Java etc. En fonction de ça, c'est tout de même mieux .

    Par ailleurs, tu ne m'as pas dit pour la fonction "add" !

  19. #19
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Pour la fonction "add" on m'a proposer de la générer automatiquement.

    Ensuite pour Android, je n'en ai pas vraiment fait, juste de niveau "scolaire" donc autant dire que j'ai rien retenu sans pratique derrière.
    Ensuite pour JAVA j'en ai fait un peu lors d'un projet de groupe, mais là je m'y remet sérieusement.
    J'ai passé ces dernières journées et nuits là-dessus, je compte bien y arriver.

  20. #20
    Membre régulier
    Femme Profil pro
    Developpeur logiciel
    Inscrit en
    Juin 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 62
    Points : 74
    Points
    74
    Par défaut
    Je vais peut-etre te paraitre un peu rude !
    Mais pour se remettre au java, je ne pense pas qu'il faille commencer par du android.

    Je pense qu'il est d'abord nécessaire de reprendre étape par étape. Même la base quand elle est remis à plat, ça fait du bien !
    Tu peux déjà faire quelques projets consoles bien hard qui mêlent l'ensemble des concept de la POO, de requêtes http / api etc.

    Et quand tu es à l'aise avec ça, là tu peux commencer avec android et ton projet.

    Ou si vraiment c'est android qui te bote, commencer par un projet qui necessite une base de données etc type "inscription, connexion, chopper les informations d'un utilisateur" et tout !

    Enfin comme tu veux .

Discussions similaires

  1. Passer des données d'une vue à l'autre
    Par clem_alain dans le forum AngularJS
    Réponses: 3
    Dernier message: 01/04/2016, 15h28
  2. Rechercher des données en fonction des variables d'un tableau
    Par BOU59000 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 01/07/2009, 13h43
  3. [Débutant] Passer des données entre les fonctions callback
    Par Nouk_Lea dans le forum Interfaces Graphiques
    Réponses: 10
    Dernier message: 18/02/2009, 16h11
  4. [Données]Passer des données entre applet et Servlet
    Par CheryBen dans le forum Applets
    Réponses: 11
    Dernier message: 16/09/2005, 13h48
  5. Réponses: 6
    Dernier message: 16/09/2005, 10h56

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