Digamos que tengo un diseño lineal vertical con:
[v1]
[v2]
Por defecto v1 tiene visibily = GONE. Me gustaría mostrar v1 con una animación expandida y presionar hacia abajo v2 al mismo tiempo.
Intenté algo como esto:
Animation a = new Animation()
{
int initialHeight;
@Override
protected void applyTransformation(float interpolatedTime, Transformation t) {
final int newHeight = (int)(initialHeight * interpolatedTime);
v.getLayoutParams().height = newHeight;
v.requestLayout();
}
@Override
public void initialize(int width, int height, int parentWidth, int parentHeight) {
super.initialize(width, height, parentWidth, parentHeight);
initialHeight = height;
}
@Override
public boolean willChangeBounds() {
return true;
}
};
Pero con esta solución, parpadeo cuando comienza la animación. Creo que se debe a que v1 muestra el tamaño completo antes de que se aplique la animación.
Con javascript, esta es una línea de jQuery! ¿Alguna forma simple de hacer esto con Android?