如果我只想为父视图设置布局并且仍想保留子视图的布局设置,我可以以某种方式阻止调用所有子视图的布局方法吗?
目前我调用 parent.layout() 并且它的所有孩子的宽度和高度都为零。我不能以某种方式将孩子设置为 FillParent 而不是将布局设置为 ALL 吗?:-(
顺便说一句,我的父母是一个扩展的 LinearLayout,主要包含 Textviews。
编辑:
一些代码:
myLayout 扩展了 LinearLayout
myLayout.layout(left, top, right, bottom);
myLayout.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT, 1));
for each child in myLayout do {
child.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
if (v instanceof TextView) {
((TextView) v).setGravity(Gravity.CENTER);
}
但是孩子仍然有:
左:0 上:0 右:0 下:0
编辑 2: 顺便说一句:上面的代码是 ViewGroup 的 onLayout 方法的内部代码。