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 :

Cherche pistes pour démarrer [Débutant(e)]


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut Cherche pistes pour démarrer
    Bonjour,

    Je suis plutôt habitué aux forums .NET et SGBD.
    Je n'ai absolument jamais fait de Java de ma vie, et je dois vous prévenir que ce langage me sort par les yeux.

    Mais bon, Google ne semble pas se décider à supporter .NET, mono pour Android est payant... Et donc si je veux bidouiller des applications sur mon téléphone, il va falloir que je fasse le pas.

    Pour le moment, le peu de bonne volonté que j'ai mis dans cette aventure m'a conduit à installer les différents outils nécessaires, compiler un HelloWorld, que j'ai même fait évoluer pour gérer des clics sur des boutons

    Bon, je vais pas parler les performances de l'usine à gaz, il fait jour, je risque de me retrouver pétrifié...

    Je souhaite me lancer dans un premier projet, suffisamment simple je pense :
    Proposer une application qui permette de récupérer des informations sur un site web.

    Ce site ne propose pas de WebService.
    Les données qu'il diffuse sont publiques, donc, même si c'est un site gouvernemental, je ne pense pas avoir besoin d'une autorisation.

    Sans avoir encore eu l'occasion de tester, j'ai trouvé dans les tutoriaux de DVP comment interroger une URI et récupérer le flux HTML. Vu ce que j'ai à faire avec, je pense que ce système basique sera suffisant (même si avoir la possibilité de me balader dans l'objet DOM comme le permet un WebClient de .NET aurait certainement simplifié les choses).

    En revanche, je me heurte au début du commencement : avant d'interroger quoi que ce soit sur le net, j'ai besoin d'afficher une liste déroulante, afin de savoir quelle page demander au serveur.

    Sauf que j'ai beau chercher, j'arrive pas à trouver comment faire un combobox, et encore moins à l'alimenter avec des items de type "clé/valeur".
    Je cherche à faire l'équivalent d'un <select> en HTML :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <select name="region">
      <option value="01">Alsace</option>
      <option value="02">Bourgogne</option>
      ...
    </select>

    Quel contrôle utiliser ? Comment le remplir avec des items "en dur" comportant un couple clé/valeur ?

  2. #2
    Membre prolifique
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    10 307
    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 307
    Par défaut
    L'équivalent d'une comboBox ce serait un Spinner :
    http://developer.android.com/guide/t...s/spinner.html

    On peut le remplir avec un fichier XML, mais il n'y a pas d'ensemble clé + valeur.

    Si il te faut absolument les clés il faut passer par un autre Adapter.
    Cela dit avec la valeur il est simple de retrouver la clé, si plusieurs item ne partagent pas la même valeur et des clés différentes.

  3. #3
    Membre Expert
    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
    Par défaut
    Sous Android, on parle de Vue plutôt que de contrôle. Un Spinner correspond à un ComboBox et est peuplé à l'aide d'un Adapter.

    Es-tu sûr d'avoir lu un cours avant de te lancer ?
    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

  4. #4
    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 StringBuilder Voir le message
    Je n'ai absolument jamais fait de Java de ma vie, et je dois vous prévenir que ce langage me sort par les yeux.
    Pourtant C# c'est Java appliqué au C++ (see old blog about this from Microsoft), et il y a même des traducteurs C# / Java tellement les deux langages sont proches.

    Les données qu'il diffuse sont publiques, donc, même si c'est un site gouvernemental, je ne pense pas avoir besoin d'une autorisation.
    Faux... Je laisse le soin aux spécialiste du droit (publication, droits de diffusion,etc...) d'expliquer la raison du pourquoi.

    (même si avoir la possibilité de me balader dans l'objet DOM comme le permet un WebClient de .NET aurait certainement simplifié les choses).
    Ca s'appelle SAXParser dans JAVA... avec une mouture spéciale HTML si besoin: HTMLParser (accès libre, trouvable par notre ami google).

    Sauf que j'ai beau chercher, j'arrive pas à trouver comment faire un combobox
    C'est pourtant quasi tout au début de l'éditeur d'interface.
    Et encore moins à l'alimenter avec des items de type "clé/valeur".
    Google est encore ton ami... mais cette fois coté developper....
    Guide Android:
    http://developer.android.com/guide/c...nts/index.html
    UI Interface:
    http://developer.android.com/guide/topics/ui/index.html
    Input Controls:
    http://developer.android.com/guide/t.../controls.html
    Spinner:
    http://developer.android.com/guide/t...s/spinner.html

    Et il y a même le code qui va bien pour remplir celui-ci ! Elle est pas belle la vie ?

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par nicroman Voir le message
    Faux... Je laisse le soin aux spécialiste du droit (publication, droits de diffusion,etc...) d'expliquer la raison du pourquoi.
    oui et non. Certains sites gouvernementaux français diffusent de l'information à but de réutilisation (statistiques, etc). Ensuite, si tu ne republie pas les données, c'est plus tangent. Après tout les proxy, les crawler etc font aussi des requetes sur des site pour les stocker et les représenter à l'utilisateur "différement"

  6. #6
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    oui et non. Certains sites gouvernementaux français diffusent de l'information à but de réutilisation (statistiques, etc). Ensuite, si tu ne republie pas les données, c'est plus tangent. Après tout les proxy, les crawler etc font aussi des requetes sur des site pour les stocker et les représenter à l'utilisateur "différement"
    Le but de mon application, c'est de dire où on habite, et d'avoir un message "oui c'est bon, tu peux faire les biberons de ton enfant avec l'eau du robinet" ou "non malheureux, y'a tout un tas de merde dans ton eau, change de ville !"

    Le tout en se basant sur les relevés de la qualité de l'eau publiés sur le site :
    http://www.sante.gouv.fr/eau-potable.html

    Les données diffusées sur le site en question sont pour ainsi dire illisibles : on a les relevés des analyses, sans savoir ce qui est bon ou non, et encore moins quels sont les seuils à respecter pour les nourrissons.

    Du coup il s'agirait d'une application d'aide à l'interprétation des données officielles, rien de plus.

  7. #7
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Pfiou...

    Ben c'est laborieux sur le PC du boulot... Windows XP avec 512 Mo de RAM, c'est moyen pour faire tourner Eclipse et l'émulateur Android... Surtout quand on a Lotus notes et SQL Developper déjà ouverts

    Résultat, au bout d'une journée, j'en suis là !

    Peut-être que j'avancerai plus vite à la maison

    Nom : qualiteeau.PNG
Affichages : 112
Taille : 74,0 Ko

    Code java : 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
     
     
    package com.sylvaindevidal.qualiteeau;
     
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.widget.ArrayAdapter;
    import android.widget.AdapterView;
    import android.view.View;
    import android.widget.Spinner;
    import android.widget.Toast;
     
    public class MainActivity extends Activity
    {
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
            Spinner spinner = (Spinner) findViewById(R.id.spinner1);
            ArrayAdapter<region> adapter = new ArrayAdapter<region>(this, android.R.layout.simple_spinner_item);
            for (String s : this.getResources().getStringArray(R.array.region_array))
            {
            	adapter.add(new region(s));
            }
            adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
            spinner.setAdapter(adapter);
     
            spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
            {
                public void onItemSelected(AdapterView<?> parentView, View view, int position, long id)
                {
                	Toast.makeText(parentView.getContext(), "Région " + parentView.getItemAtPosition(position).toString() + " d'id " + Long.toString(parentView.getItemIdAtPosition(position), 10), Toast.LENGTH_SHORT).show();
                }
     
                public void onNothingSelected(AdapterView<?> parentView) {
                	Toast.makeText(parentView.getContext(), "Aucune région sélectionnée", Toast.LENGTH_SHORT).show();
                }
            });
        }
     
        @Override
        public boolean onCreateOptionsMenu(Menu menu)
        {
            getMenuInflater().inflate(R.menu.activity_main, menu);
            return true;
        }
    }

    "Reste plus qu'à"...
    - Charger la page suivante
    - Afficher les listes déroulantes
    - Charger la page de résultat qui correspond
    - Et afficher un message lisible pour l'utilisateur

    Le bout du tunnel est loin

  8. #8
    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
    - Charger la page suivante
    - Afficher les listes déroulantes
    - Charger la page de résultat qui correspond
    - Et afficher un message lisible pour l'utilisateur
    Pas sur que tu ais besoin de plusieurs pages, surtout si c'est juste pour afficher un "ok" / "pas ok"....

    Peut être une simple liste déroulante en dessous du spinner, avec le chargement en arrière plan (de toute manière c'est obligatoire en arrière plan), avec comme contenu de la liste la commune (triées par ordre alphabétique) et un thumb-up vert, ou thumb-down red en icone...
    Eventuellement, au clic, les informations détaillées de la commune en popup...

  9. #9
    Membre Expert
    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
    Par défaut
    Citation Envoyé par StringBuilder Voir le message
    Le tout en se basant sur les relevés de la qualité de l'eau publiés sur le site :
    http://www.sante.gouv.fr/eau-potable.html

    Les données diffusées sur le site en question sont pour ainsi dire illisibles : on a les relevés des analyses, sans savoir ce qui est bon ou non, et encore moins quels sont les seuils à respecter pour les nourrissons.

    Du coup il s'agirait d'une application d'aide à l'interprétation des données officielles, rien de plus.
    Il va t'être très difficile d'exploiter les données sous cette forme
    Regardes du coté de l'initiative OpenData du gouvernement. D'ailleurs, quelqu'un s'est posé la même question : http://www.data.gouv.fr/Communaute/B...-l-eau-potable
    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

Discussions similaires

  1. Besoin d'une piste pour démarrer
    Par Invité dans le forum Ext JS / Sencha
    Réponses: 6
    Dernier message: 13/05/2009, 23h16
  2. [SRC] Cherche piste pour TLabel orientable
    Par Kaejar dans le forum C++Builder
    Réponses: 16
    Dernier message: 08/06/2005, 17h13
  3. Réponses: 3
    Dernier message: 01/07/2003, 16h04
  4. Cherche conseil pour choisir mon orientation.
    Par AslDice dans le forum Débuter
    Réponses: 6
    Dernier message: 24/04/2003, 17h07
  5. [Kylix] cherche composants pour les sockets
    Par coriolis dans le forum EDI
    Réponses: 1
    Dernier message: 09/04/2003, 10h18

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