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 :

Problème avec setOnTouchListener accès seulement à ACTION_DOWN


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut Problème avec setOnTouchListener accès seulement à ACTION_DOWN
    Bonjour à toutes et à tous,

    J'ai une application dans laquelle j'ai :

    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
            affCarte.setOnTouchListener(new View.OnTouchListener() { // Déplacement de la carte par touché de l'écran
                @Override
                public boolean onTouch(View v, final MotionEvent event) {
                    int action = event.getAction();
                    float distx, disty;
                    if (INIT.prefsGPS.lumMaxOk && action == MotionEvent.ACTION_DOWN) {
                        t0Aff = System.currentTimeMillis() + INIT.prefsGPS.tMaxLumAff;
                        affEcran.screenBrightness = lumEcran;
                        getWindow().setAttributes(affEcran);
                    }
                    if (!GPS.nav) { // On ne peut déplacer la carte que si l'on est pas en mode navigation
                        switch (action & MotionEvent.ACTION_MASK) {
                            case MotionEvent.ACTION_DOWN:
                                touchState = TOUCH;
                                ...
                                break;
                            case MotionEvent.ACTION_POINTER_DOWN:
                                touchState = PINCH;
                                ...;
                                break;
                            case MotionEvent.ACTION_MOVE:
                                switch (touchState) {
                                    case TOUCH:
                                        ...
                                        break;
                                    case PINCH:
                                            ...
                                        }
                                        break;
                                }
                                break;
                            case MotionEvent.ACTION_POINTER_UP:
                                touchState = TOUCH;
                                break;
                            case MotionEvent.ACTION_UP:
                                touchState = IDLE;
                                ...
                                break;
                        }
                    }
                    return false;
                }
            });
    Selon que j’appuie, je me déplace, ... sur l'écran, j'ai accès aux différents items --> OK

    Je viens de créer une nouvelle application où j'ai recréé cette procédure terme pour terme et où les définitions de "AffCarte" sont les mêmes dans le fichiers java et xml pour le layout.

    Dans cette nouvelle application, je n'ai accès qu'à l'item "ACTION_DOWN". Je ne vois pas pourquoi.

    Ça fait plusieurs heures que je cherche ce qui pourrait bien différencier mes deux applications à ce sujet sans rien trouver.

    NOTA : je viens de résoudre partiellement mon problème en mettant return à true. Pour autant, dans mon application d'origine, return est à false !

    Merci de votre aide.

    Pierre.

  2. #2
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut
    J'ai résolu mon problème.

    Dans mon application d'origine, j'ai aussi un appel à "setOnLongClickListener" ("setOnClickListener" donne le même résultat), et dans ce cas, dans "setOnTouchListener" il faut mettre return à false.

    Voir réponse 2 de ce lien.

    Cordialement.

    Pierre.

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

Discussions similaires

  1. [WD24] Problème avec l'accès natif SQLite
    Par Jon Shannow dans le forum WinDev
    Réponses: 26
    Dernier message: 20/01/2020, 14h41
  2. [WD10] Problème avec accès natif pour windev
    Par nouhoun dans le forum WinDev
    Réponses: 1
    Dernier message: 11/06/2008, 21h36
  3. problème avec mon code pour accès au serveur ftp
    Par mimi51340 dans le forum Général Java
    Réponses: 1
    Dernier message: 03/03/2008, 23h24
  4. Accès Web depuis un logiciel : problème avec le Firewall
    Par MiJack dans le forum Web & réseau
    Réponses: 2
    Dernier message: 29/10/2007, 15h55
  5. [Excel] Problème avec l'accès aux feuilles et aux cellules
    Par bl00df0x dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 30/09/2005, 14h21

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