LayoutParams不适用于ScrollView中的子项

时间:2012-11-30 09:13:57

标签: android android-layout

我在扩展ScrollView的类中使用LinearLayout。 LinearLayout具有多个子节点,其高度在我的自定义类的覆盖onScrollChanged()方法中更改。如果滚动缓慢执行,一切都很完美。如果我用快速动作快速滚动儿童的高度frizzes。我在重写的onScrollChange()方法中创建了日志输出,它显示了未应用布局参数。

Log.v("myapp", "getHeight: "+mChildHolder.getChildAt(i).getHeight());
Log.v("myapp", "getLayoutParams.height "+mChildHolder.getChildAt(i).getLayoutParams().height);

输出:

getHeight: 45
getLayoutParams.height 90

为什么scrollview在弹出后不允许应用LayoutParams的任何想法?

1 个答案:

答案 0 :(得分:0)

看起来找到了解决方案。我最终在每次调用onScrollChanged()时调用requestLayout()。不确定它在性能方面是否有效但现在可以按预期工作。