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 :

Erreur R.anim avec ViewFlipper


Sujet :

Android

  1. #21
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    ah ben non il n'y sont pas dedans lol enfin je vais essayer et je vous tiens au courant

  2. #22
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    Ça y est, ça marche enfin merci merci quelqu’un sait quel propriété faut il utiliser pour tourner les pages avec le doigt plutôt que automatiquement ?

  3. #23
    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
    Tu as une réponse de Viish sur ce sujet .

    http://www.developpez.net/forums/d10...uvement-doigt/
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  4. #24
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    merci pour ton aide

  5. #25
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    bon et bien je n'arrive pas du tout a comprendre comment utiliser ça les gesturedetector si quelqu'un pouvais m'aider a adapter sa a mon code ça serait super

  6. #26
    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,

    Montre nous ce que tu as déjà fait ?

    Merci.
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  7. #27
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    en faite j'ai ouvert un nouveau sujet sur ça mais a parement personne n'y fait attention et vue que toi tu me demande se que j'ai déjà fait je te le dit de suite

    donc j'ai mis en place les gesture avec un onFling et j'ai aussi essayé le LongPress pour voir si c’était pas ça qui foirer mais en faite même pas les toast s'affiche quand je glisse mon doigt ou que je reste appuyé

    voici mon code :

    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    package com.m.h;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.GestureDetector;
    import android.view.GestureDetector.SimpleOnGestureListener;
    import android.view.Gravity;
    import android.view.MotionEvent;
    import android.view.View;
    import android.view.ViewGroup;
    import android.view.ViewGroup.LayoutParams;
    import android.view.animation.Animation;
    import android.view.animation.AnimationUtils;
    import android.widget.Button;
    import android.widget.LinearLayout;
    import android.widget.Toast;
    import android.widget.ViewFlipper;
     
    public class mh extends Activity {
     
    	static String[] items ={"Ajoupa Bouillon", "Anses d'Arlet", "Basse Pointe", "	Bellefontaine", "Carbet", "Case Pilote", "Diamant", "Ducos", "Fond Saint Denis", "Fort De France", "François", "Grand Rivière", "Gros Morne", "Lamentin", "Lorrain", "Macouba", "Marigot", "Marin", "Morne Rouge", "Morne Vert", "Prêcheur", "Rivière Pilote", "Rivière Salée", "Robert", "Sainte Anne", "Sainte Luce", "Sainte Marie", "Saint Esprit", "Saint Joseph", "Saint Pierre"};
    	private static final int SWIPE_MIN_DISTANCE = 120;
    	private static final int SWIPE_MAX_OFF_PATH = 250;
    	private static final int SWIPE_THRESHOLD_VELOCITY = 200;
    	private GestureDetector gestureDetector;
    	View.OnTouchListener gestureListener;
    	private int currentIndex = 0;
    	private int maxIndex = 30;
     
    	ViewFlipper flipper;
     
    	Animation slideLeftIn;
    	Animation slideLeftOut;
    	Animation slideRightIn;
    	Animation slideRightOut;	
     
     
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
     
            flipper=(ViewFlipper)findViewById(R.id.details);
     
            slideLeftIn = AnimationUtils.loadAnimation(this, R.anim.slide_left_in);
            slideLeftOut = AnimationUtils.loadAnimation(this, R.anim.slide_left_out);
            slideRightIn = AnimationUtils.loadAnimation(this, R.anim.slide_right_in);
            slideRightOut = AnimationUtils.loadAnimation(this, R.anim.slide_right_out);
     
            flipper.setInAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_in));
            flipper.setOutAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_out));
     
            if (items != null)
            {
            Button btn =new Button(this);
            Button btn2 = new Button(this);
     
            btn.setText("categorie");
            btn2.setText(items[currentIndex]);
            LinearLayout mylayout = new LinearLayout(this);
            mylayout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
            mylayout.addView(btn);
            mylayout.addView(btn2);
     
            flipper.addView(mylayout, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
            }
     
     
     
    		gestureDetector = new GestureDetector(new MyGestureDetector());
     
        }
    	public boolean onTouch(View v, MotionEvent event) {
    		if (gestureDetector.onTouchEvent(event)) {
    		return gestureDetector.onTouchEvent(event);
    		}
    		return false;
    	}
     
     
     
    	class MyGestureDetector extends SimpleOnGestureListener {
    	@Override
    	public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
    	     if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
    					return false;
    				// right to left swipe
    				if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE
    						&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
    					flipper.setInAnimation(slideLeftIn);
    					flipper.setOutAnimation(slideLeftOut);
     
    					if (currentIndex == maxIndex) {
    						currentIndex = 0;
    					}
    					else {
    						currentIndex = currentIndex + 1;
    					}
     
    					Toast.makeText(mh.this, "Left Swipe", Toast.LENGTH_SHORT).show();
     
    					flipper.showNext();
    				}
    				else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
    						&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
    					flipper.setInAnimation(slideRightIn);
    					flipper.setOutAnimation(slideRightOut);
     
    					if (currentIndex == maxIndex) {
    						currentIndex = 0;
    					}
    					else {
    						currentIndex = currentIndex - 1;
    					}
    					Toast.makeText(mh.this, "Right Swipe", Toast.LENGTH_SHORT).show();
    					flipper.showPrevious();
    				}
    			return false;
    		}
     
    	@Override
    	public void onLongPress(MotionEvent e)
    	{
    	Toast mToast = Toast.makeText(getApplicationContext(), "Long Press", Toast.LENGTH_SHORT);
    	mToast.show();
    	}
     
    	}
     
     
     
     
            }

  8. #28
    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,

    Passes plutôt comme cela , si tu veux intercepter sur toutes ta vue

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public class mh extends Activity implements OnGestureListener
    Tu n'auras plus qu'a surcharger les fonctions onFling , ..


    PS:
    en faite j'ai ouvert un nouveau sujet sur ça mais apparemment personne n'y fait attention
    .... Tu sais je viens de rentrer de week end , et je remonte les post un par un , donc avant que j'arrive à ton nouveau sujet j'ai trouvé l'ancien .

    Avant de penser que personne ne te réponds laisse un peu de temps à ces personnes ...

    Maintenant je t'invites à relire les règles du forum
    http://club.developpez.com/regles/
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  9. #29
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    désolé et je m'en excuse encore merci pour ta réponse je vais tenter de faire ce dont tu m'a dit et je te tiens au jus

  10. #30
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    que veut tu dire par surcharger onFling tu peut me mettre un exemple ?

  11. #31
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    je sais que c'est primordiale de connaitre ça mais quand on débute il faut l'apprendre au moins une fois

  12. #32
    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,

    que veut tu dire par surcharger onFling tu peut me mettre un exemple ?
    Quand tu positionne un @Override au dessus de tes fonctions , tu stipules au compilateur que tu redéfinies la fonction .

    D'ailleurs je n'aurais pas du dire surcharger me redéfinir, cela veut dire que tu récupères une fonction de ta classe Mère que tu redéfinies dans ta classe fille .

    Un exemple : Où la Class B redéfinie la fonction Toto .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Class A {
       protected int Toto ();
    }
     
    Class B extends A {
       protected int Toto ();
    }
    Donc il te suffira juste de redéfinir ta fonction onFling dans ta nouvelle class mh.
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  13. #33
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    ah je comprend mieux a quoi servent les @Override il existe pas une doc avec les différents type ?

  14. #34
    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
    ah je comprend mieux a quoi servent les @Override il existe pas une doc avec les différents type ?
    Si
    Tu as une doc sur les différentes annotations sous android
    http://developer.android.com/referen...nnotation.html

    Après tu peux toujours relire les cours sous java , pour en apprendre un peu plus sur les mots clés à connaître

    http://java.developpez.com/faq/java/...angage_notions
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  15. #35
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    bon et bien tout marche bien merci a toi d'avoir été patient saurait tu comment je pourrait faire en sorte que btn2 porte le nom de items[currentIndex] a chaque changement sachant que currentIndex s’incrémente ou se décrémente a chaque slide mais le bouton lui ne veut pas changer et reste sur items[0] qui est ajoupa bouillon dans la var items[]

    ?

  16. #36
    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
    Tu remets bien à jour ton bouton btn2 juste après l'animation ?

    Du style :
    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
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
    	     if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
    					return false;
    				// right to left swipe
    				if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE
    						&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
    					flipper.setInAnimation(slideLeftIn);
    					flipper.setOutAnimation(slideLeftOut);
    					
    					if (currentIndex == maxIndex) {
    						currentIndex = 0;
    					}
    					else {
    						currentIndex = currentIndex + 1;
    					}
    					
    					Toast.makeText(mh.this, "Left Swipe", Toast.LENGTH_SHORT).show();
     
    					flipper.showNext();
                                            btn2.setText(items[currentIndex]);
    				}
    				else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
    						&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
    					flipper.setInAnimation(slideRightIn);
    					flipper.setOutAnimation(slideRightOut);
    					
    					if (currentIndex == maxIndex) {
    						currentIndex = 0;
    					}
    					else {
    						currentIndex = currentIndex - 1;
    					}
    					Toast.makeText(mh.this, "Right Swipe", Toast.LENGTH_SHORT).show();
    					flipper.showPrevious();
    				}
    			return false;
    		}
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  17. #37
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2011
    Messages : 30
    Points : 4
    Points
    4
    Par défaut
    bon ben il me reste plus qu’a a mettre le sujet en résolu en tout cas merci je te trouve très présent sur le forum merci bien a toi

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Erreur sur IIS avec des cripts ASP
    Par Alin dans le forum ASP
    Réponses: 7
    Dernier message: 22/06/2004, 14h15
  2. Animations avec différents objet
    Par Mathieu.J dans le forum OpenGL
    Réponses: 6
    Dernier message: 09/06/2004, 14h18
  3. erreur tcp/ip avec jdbc
    Par champion dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 03/04/2004, 14h32
  4. Réponses: 2
    Dernier message: 14/01/2004, 16h21
  5. Erreur de sgmentation avec malloc
    Par simonm dans le forum C
    Réponses: 5
    Dernier message: 27/02/2003, 08h29

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