Angenommen, ich habe ein vertikales lineares Layout mit:
[v1]
[v2]
Standardmäßig hat v1 sichtbar = GONE. Ich möchte v1 mit einer erweiterten Animation zeigen und gleichzeitig v2 nach unten drücken.
Ich habe so etwas versucht:
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;
}
};
Aber mit dieser Lösung habe ich ein Blinken, wenn die Animation beginnt. Ich denke, es liegt daran, dass v1 in voller Größe angezeigt wird, bevor die Animation angewendet wird.
Mit Javascript ist dies eine Zeile von jQuery! Gibt es eine einfache Möglichkeit, dies mit Android zu tun?