我有以下布局:
<?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>
我最终得到这样的结果:
+------------------------+------------+
| | |
| | |
| Left | Right |
| | |
| | |
+------------------------+------------+
当切换某个切换时,我想为 Left 设置动画,使其宽度扩大以填满整个屏幕。同时,我想为 Right 的宽度设置动画,使其缩小为零。稍后,当再次切换切换时,我需要将事物恢复到上述状态。
我已经尝试编写自己的 Animation 来调用View.getWidth()
,但是当我动画回那个值(通过设置View.getLayoutParams().width
)时,它比开始时更宽。我怀疑我只是做错了。我还阅读了有关 Honeycomb 动画内容的所有文档,但我不想翻译或缩放...我想为布局宽度属性设置动画。我找不到这样的例子。
这样做的正确方法是什么?