简而言之,我想要扩展视图 - 就像Android电子市场一样,当您点击“更多”按钮时,在示例“说明”上。
我弄明白,认为Android市场具有以下结构的布局:(通过view.setAnimation(), view.setLayoutAnimation()
和ScaleAnimation
)如何缩放View/ViewGroup - 以正确的方式动画布局?
<FrameLayout
android:id="@+id/artists_frame"
android:layout_width="fill_parent"
android:layout_height="64dip"
android:layout_below="@id/something1"
android:layout_above="@id/something2"
>
<!-- Some view there, which height >> 64dip -->
</FrameLayout>
所以,我已经试过各种动画/ LayoutAnimations上的FrameLayout,但效果总是相同的:视图动画,但它是真正的layout_height缩放后仍然是相同的(所以其他视图的位置,依赖于给定的FrameLayout,保持不变)。
在那之后,我想 - 我在循环改变给定的FrameLayout的layout_height:
layoutParams = view.getLayoutParams()
layoutParams.height = scaleTo;
layout.setLayoutParams(layoutParams);
我有它得到了动画,类似市场的看法,但成本(性能! !)是高...
所以,问题是:是否有任何其他适当的方式来缩放(例如高度从50dip改变为200dip)给定的View/ViewGroup,以便下面的视图的位置动画视图也改变了?
我一直在尝试做同样的事情。这是我的一半尝试:https://gist.github.com/947574它在'Animation'的子类中设置布局参数。表现还不错。正在调整大小的错误,没有完成 - 在追赶怪癖时耗尽了预算。 – 2011-04-28 23:41:49
也是类似的SO问题与类似的解决方案:http://stackoverflow.com/questions/4946295/android-expand-collapse-animation – 2011-04-29 00:00:07