Android - & gt; comment animer à la nouvelle position
Ici est simple xml android animation:
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0" android:fromYDelta="0" android:toXDelta="-110"
android:toYDelta="-110" android:duration="1000" android:fillAfter="true" />
Je veux déplacer un objet animé à partir du centre de l'écran pour 0, 0 positions. Comment le chat je le fais (il devrait fonctionner sur toutes les résolutions d'écran)
Ma Réponse:
Merci les gars pour votre aide. Mais j'ai régler mon problème par l'autre manière, de façon dynamique, sans xml. Voici le code complet de cette méthode:
public void replace(int xTo, int yTo, float xScale, float yScale) {
//create set of animations
replaceAnimation = new AnimationSet(false);
//animations should be applied on the finish line
replaceAnimation.setFillAfter(true);
//create scale animation
ScaleAnimation scale = new ScaleAnimation(1.0f, xScale, 1.0f, yScale);
scale.setDuration(1000);
//create translation animation
TranslateAnimation trans = new TranslateAnimation(0, 0,
TranslateAnimation.ABSOLUTE, xTo - getLeft(), 0, 0,
TranslateAnimation.ABSOLUTE, yTo - getTop());
trans.setDuration(1000);
//add new animations to the set
replaceAnimation.addAnimation(scale);
replaceAnimation.addAnimation(trans);
//start our animation
startAnimation(replaceAnimation);
}
source d'informationauteur pleerock
Vous devez vous connecter pour publier un commentaire.
Ma solution:
Merci les gars pour votre aide. Mais j'ai régler mon problème par l'autre manière, de façon dynamique, sans xml. Voici le code complet de cette méthode:
Premier, insérer un objet dans un conteneur qui occupe tout l'écran. Puis modifiez-vous de l'animation xml comme ceci
Vous pouvez également consulter ce android de référence de l'API http://developer.android.com/guide/topics/resources/animation-resource.html#translate-element
%p suffixe se traduit par élément "en pourcentage par rapport à la taille du parent".
Si vous voulez qu'il fonctionne sur tous les écrans, vous n'allez pas être en mesure de coder en dur des valeurs x,y. Des Animations vous permettent d'utiliser des pourcentages. Cette animation déplacer votre point de vue à partir de 0% x et y(par rapport à lui-même. En d'autres termes où elle est avant de l'animation, il va commencer à partir de là), Il va passer à 0%p x et y (qui signifie 0% par rapport à la mère) Ce qui devrait vous prendre vers le haut à gauche. En fonction de comment loin dans le coin, vous le voulez, vous pouvez essayer 5%p ou 10%p pour obtenir une partie supplémentaire de la marge.