我的自定义视图会动态添加按钮控件。在我的onLayout
方法中,我有一个类似于下面的逻辑。
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
for (int i = 0; i < this.getChildCount(); i++) {
this.getChildAt(i).layout(left, top, right / 2, top + 200);
}
}
这会使我的按钮控制而不是收缩。将layout()
更改视图的宽度,否则它将仅裁剪它。
我是否需要为onMeasure()
中的所有孩子调用措施。
提前致谢。
答案 0 :(得分:0)
是的,一般来说,测量会告诉视图有多大,而布局会告诉视图在哪里。如果您在没有度量的情况下覆盖布局,则视图将在错误的位置绘制为完整大小,并且将被画布裁剪。