2017-09-30 20 views
1

Dès maintenant dans mon application, j'ai un bouton principal. Si vous cliquez dessus, deux autres boutons apparaissent et si vous cliquez à nouveau sur ce bouton principal, ils disparaissent. J'ai aussi fait bouger ces deux boutons au lieu de les faire apparaître sans animation. Le problème ici est que chaque fois qu'ils bougent, ils traînent.Pourquoi mes boutons sont-ils décalés lorsqu'ils bougent?

Ceci est la méthode principale:

public void buttonClickAppear(View view) { 
     animMove = loadAnimation(this, R.anim.anim_translate); 
     if (!reportesState) { 
      playas.startAnimation(animMove); 
      playas.setVisibility(View.VISIBLE); 
      res.startAnimation(animMove); 
      res.setVisibility(View.VISIBLE); 
      reportesState = true; 
     } else { 
      playas.setVisibility(View.GONE); 
      res.setVisibility(View.GONE); 
      reportesState = false; 
     } 
    } 

Ceci est l'animation:

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/linear_interpolator"> 
    <translate 
     android:fromXDelta="100" 
     android:toXDelta="100" 
     android:duration="80" 
     /> 

</set> 

Que dois-je faire? Quel pourrait être le problème? Peut-être, le code XML pour l'animation est faux, je ne sais pas ...

Répondre

1

Vous n'avez pas besoin de la ligne android:toXDelta="100". Cela provoque le décalage.

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/linear_interpolator"> 
    <translate 
     android:duration="80" 
     android:fromXDelta="100"/> 
</set>