在Android中监听布局更改

时间:2011-01-17 17:54:38

标签: android layout view android-layout

如何在布局传递完成后收到通知?是否有类似onLayoutFinished()的东西我可以在某处实现或覆盖?

来自View javadoc:

  

布局是两个过程:a   测量通过和布局通过。该   测量通过实施   measure(int,int)并且是一个自上而下的   遍历视图树。每个视图   推动尺寸规格   递归期间的树。在   度量结束,每个视图   已存储其测量值。该   第二遍在布局中发生(int,   int,int,int)也是自上而下的。   在这个过程中,每个父母都是   负责定位所有的   儿童使用的计算尺寸   措施通过。

我想要的是在“第二遍”结束后执行一些逻辑。特别是,我想对视图进行一些更改,然后更改另一个视图,该视图取决于第一个视图的框架(位置和大小)。

1 个答案:

答案 0 :(得分:3)

你可以简单地覆盖onLayout()并在调用super.onLayout()之后做你需要做的事情。您还可以覆盖onSizeChanged(),仅当布局通道更改视图的坐标/大小时才会调用它。

相关问题