我正在尝试在我的LinearLayout
through上执行平滑过渡(展开/折叠) Animation
。这是我用于动画的代码:
Animation anim = new Animation(){
@Override
protected void applyTransformation(float interpolatedTime, Transformation t){
super.applyTransformation(interpolatedTime, t);
layout.getLayoutParams().height = (int)(84*interpolatedTime);
layout.requestLayout();
}
};
问题是展开/折叠动画效果很好,但是一旦动画完成,布局本身就无法正确显示。下面的灰色渐变块是它的样子(而不是 textview 和 edittext):
即使我在打电话layout.requestLayout();
,但它仍然不会在每个 interpolatedTime 时间刷新布局图。我在这里缺少什么吗?
PS我在设置高度时使用84的原因是因为我知道我的布局的渲染高度并且它仅在测试/调试过程中静态定义。