He la siguiente distribución:¿Cómo funciona una característica de diseño de animación de ViewGroups?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent">
<FrameLayout android:id="@+id/viewgroup_left"
android:layout_height="match_parent"
android:layout_weight="2"
android:layout_width="0dp">
... children ...
</FrameLayout>
<LinearLayout android:id="@+id/viewgroup_right"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_width="0dp"
android:orientation="vertical">
... children ...
</LinearLayout>
</LinearLayout>
que terminar con algo como esto:
+------------------------+------------+
| | |
| | |
| Left | Right |
| | |
| | |
+------------------------+------------+
Cuando se activa una determinada palanca, que desea animar izquierda de modo que su anchura se expande para llenar el toda la pantalla. Al mismo tiempo, me gustaría animar el ancho de la derecha para que se reduzca a cero. Más tarde, cuando se vuelva a alternar, necesito restaurar las cosas al estado anterior.
He intentado escribir mi propia animación que llame al View.getWidth()
pero cuando vuelvo a animar a ese valor (estableciendo View.getLayoutParams().width
) es más ancho que cuando comenzó. Sospecho que lo estoy haciendo mal. También he leído toda la documentación sobre las animaciones de Honeycomb, pero no quiero traducir ni escalar ... Quiero animar la propiedad de ancho de diseño. No puedo encontrar un ejemplo de esto.
¿Cuál es la forma correcta de hacerlo?