Bonjour à tous,
je suis actuellement en train de gérer les progressDialog sur mon application (eh oui j'arrive bientôt à la première version que je vais pouvoir mettre sur googlePlay).
Pour gérer les progressDialog j'ai cette fonction:
Je passe en paramètre de la fonction un int ou viendra se loger la taille de mon jArray et en fonction de ça le chargement en dépendra. Cependant j'ai mis en dure le temps d'attente entre chaque tour de boucle (ici 500), mais il ne sera pas le même en fonction des utilisations de l'utilisateur. En effet, si il est en EDGE ou en WIFI le temps de chargement ne sera pas le même. Mon problème ici c'est par exemple que je suis en wifi, ça me marque toujours temps de chargement en cours mais je vois derrière les données qui ont déjà fini de chargé. Je ne sais pas trop comment gérer ça de manière plus optimisé, c'est à dire que si il est sur une grosse connection et que les données s'affiche presque immédiatement on voit peu le cercle de chargement et que si il est en EDGE et que c'est long que l'on voiut le cercle de chargement jusqu'à la fin du chargement des données.
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 private void traitementDesDonnees(final int taille) { progressDialog.setMessage("Chargement en cours"); progressDialog.show(); new Thread(new Runnable() { public void run() { for (int i = 0; i < taille; i++) { try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } } progressDialog.dismiss(); } }).start(); }
Je vous remercie
Italia57
Partager