自定义linearlayout,在构造函数上获取所有子视图

时间:2013-05-03 10:35:10

标签: android android-linearlayout

我遇到了自定义LinearyLayout的问题,它基本上是一个继承自LinearLayout的类..没什么特别的.. 问题是我需要获取我的自定义linearlayout中的所有子视图。 我试过了:

this.getChildCount();

但它一直返回零,我开始认为,在构造函数中运行此代码的过程中,可能还有孩子已经添加了吗?

提前致谢!

3 个答案:

答案 0 :(得分:4)

非常感谢! 结束这样做:

@Override
protected void onFinishInflate ()
{
    super.onFinishInflate();
    childs = this.getChildCount();
}

因为我在活动中使用了childs变量,并且需要在我点击activity-onCreate之前设置该值...这解决了:)

感谢您的指导!

答案 1 :(得分:3)

是的,您应该在this.getChildCount();内移动onLayout相关代码。当视图应为每个子节点指定大小和位置时,会调用实际onLayout

答案 2 :(得分:1)

在活动中充气后,您将获得线性布局的子计数。