Rotation pièce de monnaie

  • Auteur de la discussion columbos
  • Date de début
C

columbos

Membre
Inscrit
29 Juillet 2011
Messages
144
Points
16
  • #1
Salut à tous,
J'ai crée un layout classique avec une imageview dans laquelle j'ai mis une pièce de monnaie. Ensuite pour la faire tourner dans le sens X, voici mon code:
DisplayMetrics metrics = Resources.getSystem().getDisplayMetrics();
AnimatorSet animatorSet = new AnimatorSet();
ObjectAnimator animator1 = ObjectAnimator.ofFloat(splash, "translationY", 0, (float) -(metrics.heightPixels *2 /3.5));
ObjectAnimator animator2 = ObjectAnimator.ofFloat(splash, "rotationX", 0, 7200);
animatorSet.setDuration(1500);
animatorSet.playTogether(animator1, animator2);
animatorSet.start();
La pièce tourne impeccable et monte.

Mon problème vient que maintenant, pour bien gérer le placement des objets, j'ai utilisé une autre méthode, création dynamique de ma pièce:
LinearLayout linear_pieces = findViewById(R.id.linearlayout1);
getWindowManager().getDefaultDisplay().getMetrics(metrics);
layoutparams = (RelativeLayout.LayoutParams)linear_pieces.getLayoutParams();
// Définir le placement TOP du LinearLayout1
float ztop = (float) (metrics.heightPixels * .14);
layoutparams.setMargins(0, (int) -ztop,0,0);
linear_pieces.setLayoutParams(layoutparams);
linear_pieces.setVisibility(VISIBLE);
piece1 = new ImageView(this);
piece1.setPadding((int) zcalc2, (int) zcalc3, (int) zcalc2, 0);
piece1.setImageBitmap(imgTET); c'est ma pièce de monnaie
linear_pieces.removeAllViews(); linear_piecesa.removeAllViews();
linear_pieces.addView(piece1);

Et là quand je lance animatorSet.playTogether(animator1, animator2), la pièce part dans tous les sens !!!

merci de votre aide.
 
Haut Bas