Problème d'affichage d'image avec l'animation scale (zoom) [Résolu]

sagat06 166 Messages postés mercredi 27 juin 2007Date d'inscription 31 mars 2014 Dernière intervention - 12 sept. 2012 à 14:32 - Dernière réponse : BunoCS 14000 Messages postés lundi 11 juillet 2005Date d'inscription 20 août 2018 Dernière intervention
- 17 sept. 2012 à 13:53
Bonjour à tous,
voilà je souhaite faire une simple animation scale zoomant donc sur 1 image.

Mon soucis est que l'image zoomée ne s'affiche pas complètement, se limitant à la partie qui fait la taille d'origine de l'image !
J'espère m'être fait comprendre ^^

Le fichier zoom.xml définissant l'animation

<scale                    
    android:toXScale="1.4"                 
    android:fromXScale="1.0"                 
    android:toYScale="1.4"
    android:fromYScale="1.0"
    android:pivotX="50%"
    android:pivotY="50%"
    android:startOffset="100"
    android:duration="1600" />


Le fichier main.xml qui construit l'activity

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:layout_gravity="center" >

<LinearLayout
   android:orientation="horizontal"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_marginTop="10dp"
   android:layout_gravity="center" >


</LinearLayout>



</LinearLayout>


Le fichier main.java gérant tout ça:

blabla...

public class MainActivity extends Activity implements OnClickListener {

       // Called when the activity is first created.
       private Button validate;
       private ImageView anim;

       @Override
       public void onCreate(Bundle savedInstanceState) {

             super.onCreate(savedInstanceState);
             setContentView(R.layout.activity_main);
             validate = (Button)findViewById(R.id.validate);
             anim = (ImageView)findViewById(R.id.imageanim); 
             validate.setOnClickListener(new View.OnClickListener() {

             public void onClick(View v) {
                    Animation animation;
                    animation  = AnimationUtils.loadAnimation(v.getContext(), R.anim.zoom);
                    try
                    {
                         anim.setImageDrawable(getResources().getDrawable(R.drawable.mon_ima));
                         anim.startAnimation(animation);
                    }
                         catch (Exception e)
                    {
                         e.printStackTrace();
                    }
             }
      }
}


Merci d'avance pour votre aide.
A bientôt

Signé Sagat
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
sagat06 166 Messages postés mercredi 27 juin 2007Date d'inscription 31 mars 2014 Dernière intervention - 14 sept. 2012 à 17:27
3
Merci
J'ai résolu mon problème avec l'ajout de marges autour de mes images.

Le conteneur qui avait les attributs width et height à wrap_content cachait une partie de l'image qui s'agrandissant via l'animation scale, en effet sa taille ne variait pas ^^

J'aurai bien galéré pour pas grand chose finalement...

Signé Sagat

Merci sagat06 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 68 internautes ce mois-ci

Commenter la réponse de sagat06
sagat06 166 Messages postés mercredi 27 juin 2007Date d'inscription 31 mars 2014 Dernière intervention - 12 sept. 2012 à 15:48
0
Merci
En gros, je vois que l'image s'agrandit bien mais la zone visible correspond à la taille initiale de l'ImageView !

Signé Sagat
Commenter la réponse de sagat06
BunoCS 14000 Messages postés lundi 11 juillet 2005Date d'inscription 20 août 2018 Dernière intervention - 17 sept. 2012 à 13:53
0
Merci
C'est cool, merci du partage


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.