Ho il seguente schema:Come si animano le proprietà di Layout dei ViewGroup?
<?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>
ho finire con qualcosa di simile:
+------------------------+------------+
| | |
| | |
| Left | Right |
| | |
| | |
+------------------------+------------+
Quando un certo premuto è attivato, voglio animare sinistra in modo che la sua larghezza si espande per riempire il schermo intero Allo stesso tempo, vorrei animare la larghezza di Right in modo che si riduca a zero. Successivamente, quando il commutatore viene nuovamente attivato, devo ripristinare le cose nello stato precedente.
Ho provato a scrivere la mia animazione che chiama View.getWidth()
ma quando ritorna a quel valore (impostando View.getLayoutParams().width
) è più largo di quando è iniziato. Sospetto che stia sbagliando. Ho anche letto tutta la documentazione sull'animazione di Honeycomb, ma non voglio tradurre o ridimensionare ... Voglio animare la proprietà della larghezza del layout. Non riesco a trovare un esempio di questo.
Qual è il modo corretto per farlo?