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 :

ProgressDialog qui se ferme quand on click sur l'écran


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 55
    Par défaut ProgressDialog qui se ferme quand on click sur l'écran
    Bonjour,

    Je suis en train de d'implémenter une fonction qui fait des requête et je voulais afficher une progressdialog en attendant la réponse du serveur. Mais j'ai remarqué que quand je tape sur l'écran en dehors de la progressDialog elle disparaît...
    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
     
    public void fouction(){
                    progressDialog = new ProgressDialog(this);
    		progressDialog.setMessage(getString(R.string.loading));
    		progressDialog.show();
     
    		new Thread(new Runnable() {
    			@Override
    			public void run() {
    				while(FAUX){
                                       ...
                                       try {
    						Thread.sleep(100);
    					} catch (InterruptedException e) {
    						e.printStackTrace();
    					}
    				}
    				progressDialog.dismiss();
    			}
    		}).start();
    }
    J'ai du mal à bien comprendre ce qui se passe don csi quelqu'un pouvait m'éclairer...

    Merci,
    Drlord.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    Tu peux simplement empêcher la Dialog de se fermer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    progressDialog.setDissmisable(false);

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2012
    Messages : 43
    Par défaut
    Prend garde à ce qui pourrai se passer si tu change l'orientation de ton écran pendant que ton Thread s'éxécute. C'est toujorus délicat à gérer.

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 55
    Par défaut
    Citation Envoyé par Simonmarky Voir le message
    Tu peux simplement empêcher la Dialog de se fermer :
    progressDialog.setDissmisable(false);
    Bonjour,

    Je en trouve pas cette fonction pour une progressDialog.
    Es-tu sur qu'il existe la méthode "setDissmisable(boolean)" ?

    @Guybrush34: Il n'y aura pas de changement d'orientation dans mon application.

    Au final, je n'ai toujours pas trouver comment résoudre mon problème.
    Mais il me semblait que le principe du progressDialog est de faire patienter l'utilisateur et qu'il ne devait rien se passer quand l'utilsateur "click" sur l'écran...

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2012
    Messages : 43
    Par défaut
    Je pense qu'il a voulu dire setCancellable() (à priori ). Il y a aussi la méthode setCanceledOnTouchOutside() qui risque de t'interresser.

    Pour cette histoire de Thread, je citais l'orientation de l'écran mais il existe d'autres cas où une activité peut être détruite quand ton activité est caché par une autre (appel téléphonique, utilisateur qui change d'application, ...). La gestion de la restauration de ton activité est à prendre en compte dans tous les cas.

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    Citation Envoyé par Guybrush34 Voir le message
    Je pense qu'il a voulu dire setCancellable() (à priori ). Il y a aussi la méthode setCanceledOnTouchOutside() qui risque de t'interresser.

    Pour cette histoire de Thread, je citais l'orientation de l'écran mais il existe d'autres cas où une activité peut être détruite quand ton activité est caché par une autre (appel téléphonique, utilisateur qui change d'application, ...). La gestion de la restauration de ton activité est à prendre en compte dans tous les cas.
    En effet, il s'agissait plutôt de setCancellable() (setDissmisable() correspondant à peu près à la même chose mais pour une Dialog)
    Toujours est-il qu'il faut faire attention à la méthode setCanceledOnTouchOutside() qui, n'empêchera pas l'utilisateur d'appuyer sur Back et de faire disparaitre la ProgressDialog, si elle est utilisée sans le setCancellable() il me semble

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 55
    Par défaut
    Merci pour vos réponses, cela fonctionne bien.
    Par contre c'est vrai qu'il faut que je regarde comment gérer correctement les thread...

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

Discussions similaires

  1. [PrestaShop] Déconnexion du client quand il click sur détails
    Par integratrice-web dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 21/04/2011, 00h02
  2. Réponses: 5
    Dernier message: 09/01/2010, 19h08
  3. Popup personalisé qui s'ouvre quand on clique sur une pub.
    Par XpFive dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 29/06/2009, 09h02
  4. Réponses: 1
    Dernier message: 06/08/2008, 02h16
  5. [Prototype] Créer un input type file quand je clique sur un lien
    Par movemedia dans le forum Bibliothèques & Frameworks
    Réponses: 5
    Dernier message: 22/04/2008, 10h58

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