android - etiqueta - Anima el ícono de la imagen desde el lugar táctil hasta la esquina superior derecha.
alt html5 (3)
en última instancia, desea mover una vista de una posición a otra posición con animación.
Paso 1: obtener la posición inicial de esa vista
int fromLoc[] = new int[2];
v.getLocationOnScreen(fromLoc);
float startX = fromLoc[0];
float startY = fromLoc[1];
Paso 2: obtener la posición de destino
int toLoc[] = new int[2];
desti.getLocationOnScreen(toLoc);
float destX = toLoc[0];
float destY = toLoc[1];
Paso 3: crea una clase para administrar la animación
public class Animations {
public Animation fromAtoB(float fromX, float fromY, float toX, float toY, AnimationListener l, int speed){
Animation fromAtoB = new TranslateAnimation(
Animation.ABSOLUTE, //from xType
fromX,
Animation.ABSOLUTE, //to xType
toX,
Animation.ABSOLUTE, //from yType
fromY,
Animation.ABSOLUTE, //to yType
toY
);
fromAtoB.setDuration(speed);
fromAtoB.setInterpolator(new AnticipateOvershootInterpolator(1.0f));
if(l != null)
fromAtoB.setAnimationListener(l);
return fromAtoB;
}
}
Paso 4: agregue animationlistener y comience la animación en la vista deseada
AnimationListener animL = new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
//this is just a method call you can create to delete the animated view or hide it until you need it again.
clearAnimation();
}
};
// ahora comienza la animación como se menciona a continuación:
Animations anim = new Animations();
Animation a = anim.fromAtoB(startX, startY, destX, destY, animL,850);
v.setAnimation(a);
a.startNow();
Espero que sea util !!
Estoy trabajando en la aplicación Android onlineShopping. Tengo que aplicar algo de animación.
- La imagen del carrito se muestra en la esquina superior derecha de la pantalla.
- La lista de elementos está en la pantalla de cada elemento con el botón "Agregar al carrito".
- Cuando el usuario presiona este botón, tengo que reproducir la animación.
- Tengo una imagen fija que debe animar desde la posición táctil hasta la imagen del carrito colocada en la esquina superior derecha de la pantalla.
Por favor, ayúdame.
Gracias por adelantado.
Actualización:
Intenté esto para mover la imagen de un lugar a otro.
TranslateAnimation anim = new TranslateAnimation(0,0,200,200);
anim.setDuration(3000);
img.startAnimation(anim);
Esta imagen quiero animar desde la posición táctil hasta la esquina superior derecha.
mira este ejemplo espero que esto te ayude: http://developer.android.com/training/animation/zoom.html