IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants graphiques Android Discussion :

Bonne pratique pour une ListView


Sujet :

Composants graphiques Android

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 92
    Points : 64
    Points
    64
    Par défaut Bonne pratique pour une ListView
    Bonjour.

    Aujourd'hui je suis content mon appli fonctionne comme je veux. Enfin presque sinon je ne serais pas là.

    Actuellement mon activité principale fait :
    - Connexion à mon site via SOAP
    - Récupération des données JSON
    - Parcours des données et sauvegarde des images
    - Mise à jour de mon SimpleAdapter avec les données
    - Chargement et mise à jour des données après un scroll vers le bas

    En wifi ça marche très bien
    Par contre sans...

    Internet c'est bien il y des tonnes de tutos, de bouts de code à ceci près qu'il y en a trop et du coup je ne sais quoi choisir.

    J'aimerais améliorer mon activité quitte à la refaire entièrement.

    Il faudrait que ma listview se crée puis avec une AsyncTask (ou autre) je charge et affiche les images au fur et à mesure sans que la consultation des données par l'utilisateur soit bloquée (j'affiche un ProgressDialog tant que tout n'est pas chargé).

    Quelqu'un pourrait-il m'aiguiller sur la bonne marche à suivre ?

    L'application SeLoger est un bon modèle de ce que je souhaiterais faire.

    Merci.

  2. #2
    Inscrit

    Profil pro
    Inscrit en
    Février 2008
    Messages
    658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 658
    Points : 892
    Points
    892
    Par défaut
    Tu veux charger les images 1 à un ? ou chargement au fur à mesure?

    Alors je te propose de regarder cela si c'est ça que tu cherche...je te donnerai le bout de code correspondant :

    https://market.android.com/details?i...paris.touriste

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 92
    Points : 64
    Points
    64
    Par défaut
    Oui voilà c'est ce que je veux.

    Une listview dynamique qui s'affiche et au fur et à mesure les images se chargent et s'affichent avec une mise à jour en scrollant vers le bas.

  4. #4
    Inscrit

    Profil pro
    Inscrit en
    Février 2008
    Messages
    658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 658
    Points : 892
    Points
    892
    Par défaut
    http://jahbromo.blogspot.com/2011/07...tance-sur.html

    Voila regarde ça ca il charge les contenue au fur à mesure...

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 92
    Points : 64
    Points
    64
    Par défaut
    Merci beaucoup

    Je check ça de suite et je referai signe une fois adapté et testé pour mon appli (si j'ai pas eu de problème avant )

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 92
    Points : 64
    Points
    64
    Par défaut
    Désolé pour le double post mais je ne pense pas qu'il y ait de notification lors d'un edit.

    Je n'aurai pas mis longtemps avant de rencontrer un problème (c'était trop beau )

    J'arrive à récupérer mes données mais lorsque je commence à scroller j'ai ça :
    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
    02-10 15:27:24.638: E/AndroidRuntime(16263): FATAL EXCEPTION: main
    02-10 15:27:24.638: E/AndroidRuntime(16263): java.lang.StringIndexOutOfBoundsException: String index out of range: 5
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at java.lang.String.substring(String.java:1625)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at org.sidibe.dynamiclistview.loader.NewsModel.getDescription(NewsModel.java:41)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at org.sidibe.dynamiclistview.loader.TestDynamicListView$NewsModelAdapter$EventListItemView.reuseItem(TestDynamicListView.java:132)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at org.sidibe.dynamiclistview.loader.TestDynamicListView$NewsModelAdapter.getView(TestDynamicListView.java:163)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.AbsListView.obtainView(AbsListView.java:1577)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.ListView.makeAndAddView(ListView.java:1778)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.ListView.fillDown(ListView.java:701)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.ListView.fillGap(ListView.java:672)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.AbsListView.trackMotionScroll(AbsListView.java:4146)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.AbsListView.onTouchEvent(AbsListView.java:2598)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.widget.ListView.onTouchEvent(ListView.java:3679)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.View.dispatchTouchEvent(View.java:3938)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:903)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1746)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1152)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.app.Activity.dispatchTouchEvent(Activity.java:2102)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1730)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewRoot.deliverPointerEvent(ViewRoot.java:2218)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.view.ViewRoot.handleMessage(ViewRoot.java:1889)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.os.Handler.dispatchMessage(Handler.java:99)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.os.Looper.loop(Looper.java:130)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at android.app.ActivityThread.main(ActivityThread.java:3691)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at java.lang.reflect.Method.invokeNative(Native Method)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at java.lang.reflect.Method.invoke(Method.java:507)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
    02-10 15:27:24.638: E/AndroidRuntime(16263): 	at dalvik.system.NativeStart.main(Native Method)
    Par ailleurs, dans la class NewsModel, TIME_KEY fait référence à une date, mais quel format ? Un timestamp ?



    EDIT : Pour le coup du "String index out of rang" je pense que cela venait du fait que j'avais mis un intervalle trop petit (10).
    Par contre pour le timestamp il m'affiche toujours 1970-01-16

    EDIT2 : Finalement j'envoie la date formatée donc plus de souci.

  7. #7
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,

    Si vous avez trouvé la solution à votre problème merci de bien vouloir éditer votre post avec le bouton .

    Sinon merci de poser vos questions.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 92
    Points : 64
    Points
    64
    Par défaut
    J'ai toujours un problème pour afficher les images au fur et à mesure.

    Dois-je passer par une AsyncTask ?

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 92
    Points : 64
    Points
    64
    Par défaut
    J'ai enfin fini par trouver

    Si ça peut aider quelqu'un : http://www.javacodegeeks.com/2010/11...ized-list.html

    En tout cas merci beaucoup jahbromo

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 16/01/2015, 11h22
  2. Bonnes pratiques pour une vue partagée
    Par HaloKard dans le forum MVC
    Réponses: 3
    Dernier message: 13/11/2010, 13h23
  3. Réponses: 13
    Dernier message: 07/04/2010, 20h22
  4. Bonne pratique pour une table de décision
    Par Nalfeim dans le forum Langage
    Réponses: 3
    Dernier message: 19/08/2009, 11h30

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