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 :

ZoomControls sur ImageView


Sujet :

Composants graphiques Android

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut ZoomControls sur ImageView
    Bonjour à tous,

    Je voudrais pouvoir zoomer sur une imageView mais je rencontre un problème pour lancer une action lorsque je clic sur le + ou le - du zoomControls
    J'arrive gerer des clic sur des boutons simples mais pas avec les zoomControls.
    Si quelque sait déclencher une fonction lors du clic je suis preneur

    Bonne journée

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    En fait le zoom fonction mais il n'est pas mis à jour, il dessine bien mon imageView plus ou moins gros mais lorsque je clique sur le bouton zoom, cela n'as aucun effet.

    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
    public class Zoom extends View 
    {
    	private Drawable image;
    	private int zoomControler=300;
     
     
    	public Zoom(Context context, AttributeSet attrs, int defStyle) 
    	{
    		super(context, attrs, defStyle);
    		image=context.getResources().getDrawable(R.drawable.photo002);
    	}
     
    	public Zoom(Context context, AttributeSet attrs) 
    	{
    		super(context, attrs);
    		image=context.getResources().getDrawable(R.drawable.photo002);	
    	}
     
    	public Zoom(Context context) 
    	{
    		super(context);
    		image=context.getResources().getDrawable(R.drawable.photo002);	
    	}
     
     
    	@Override
    	protected void onDraw(Canvas canvas) 
    	{
    		super.onDraw(canvas);
    		//here u can control the width and height of the images........ this line is very important
    		image.setBounds((getWidth()/2)-zoomControler, (getHeight()/2-zoomControler), (getWidth()/2)+zoomControler, (getHeight()/2)+zoomControler);
    		image.draw(canvas);
    	}
     
    	public int getZoom()
    	{
    		return zoomControler;
    	}
     
     
    	public void setZoom(int v)
    	{	
    		zoomControler+=v;
    		invalidate();
    	}
     
    }
    Et dans mon main :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
       //utilisation du bouton zoom +
            final Button buttonZin = (Button) findViewById(R.id.zoomIn);
            buttonZin.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    // Perform action on click
     
            		 zoom.setZoom(50);
                }
            });
    Merci à ceux qui répondront

  3. #3
    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,

    Déjà pourrais tu nous dire si tu passes par là ?

    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.

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    Je passe en paramètres la valeur à ajouter a la variable zoomControler, plus la valeur de zoomControler est élevée, plus le zoom est grand.

    Ps : merci d'avoir mis mon code de facon lisible je ne savais pas comment on faisait :S

  5. #5
    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
    Je passe en paramètres la valeur à ajouter a la variable zoomControler, plus la valeur de zoomControler est élevée, plus le zoom est grand.
    .
    Je voulais juste savoir si tu interceptais le click sur ton bouton.

    Ps : merci d'avoir mis mon code de facon lisible je ne savais pas comment on faisait :S
    De rien
    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.

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    Bhen je ne sais pas je ne pense pas mais lors du clic sur le bouton j'incremente uniquement la variable zoomControler. Le zoom ne devrait pas mis à jour automatiquement ?

  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
    Le zoom ne devrait pas mis à jour automatiquement ?
    Si grâce à ton invalidate().

    Maintenant essaye de passer en mode Debug ou rajoute des traces pour savoir si ta variable zoomController est bien mis à jour.
    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.

  8. #8
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    C'est bien ce qui me semblait, je vais tester de voir si ma variable zoomControler est bien mise à jour, je vous tiens au courant.

  9. #9
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    Je viens de vérifier et la variable zoomControler est bien incrémenter puisque de base elle est à 300 et j'ai tester de la faire monter jusqu'a 800 et aucun changement alors que si des le lancement de l'application je met la variable zoomControler à 800 alors la le zoom se fera bien mais les clic sur le boutons ne change que la variable, j'ai l'impression que invalidate ne fonctionne pas.

  10. #10
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    C'est bon j'ai réussi à le faire marcher plus ou moins, ca me redessine une image alors que je voudrais zoomer sur une image view et non créer un drawable.

    De plus je ne sais pas comment arriver à intercepter les clics sur un zoomControls, je ne sais pas comment différencié le + du -

    Merci

  11. #11
    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
    je ne sais pas comment différencié le + du -
    euh tu n'utilisais pas des boutons ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    final Button buttonZin = (Button) findViewById(R.id.zoomIn);
    Si tu veux utiliser les boutons alors tu en crées un In et l'autre Out


    Si tu utilises les ZoomControls
    http://developer.android.com/referen...mControls.html

    Les deux fonctions à surcharger :
    setOnZoomInClickListener
    setOnZoomOutClickListener
    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.

  12. #12
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 54
    Points
    54
    Par défaut
    Pourtant j'avais regardé la doc mais je les avaient pas vus ces deux fonctions
    En tout cas merci beaucoup, ca marche bien maintenant, le seul soucis c'est que ca me crée un drawable ca ne modifie pas l'imageView

Discussions similaires

  1. Drag and drop sur imageView
    Par Fer2Lance dans le forum Composants graphiques
    Réponses: 11
    Dernier message: 16/04/2012, 22h32
  2. Récupérer une image de l'objet gallery pour la mettre sur une ImageView
    Par magalis2121 dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 03/02/2012, 12h41
  3. copier le contenu d'un imageview affiché sur l'ecran
    Par sup.wado dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 05/10/2011, 11h47
  4. Créer un point GPS sur une imageView
    Par philmas dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 25/01/2011, 18h26
  5. Zomm sur ImageView
    Par Watier_53 dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 16/09/2010, 11h54

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