跟踪 TableLayout 的位置?

Posted

技术标签:

【中文标题】跟踪 TableLayout 的位置?【英文标题】:Keep tracking of the position of a TableLayout? 【发布时间】:2012-07-01 10:48:14 【问题描述】:

如何跟踪 UI 元素的位置,例如 TableLayout

我的意思是,每当它的位置发生变化时,都会调用某种事件处理程序,然后在事件处理程序代码中我可以获得这个 TableLayout 的坐标(可能是它的左上角的坐标)

示例代码将不胜感激!

谢谢

【问题讨论】:

【参考方案1】:

几乎所有小部件或布局都有onLayout 方法,它接收左、上、右和下位置作为参数。基类android.view.View 甚至有一个监听这个事件onLayoutChangeListener,但TableLayout 没有。所以你可以扩展它并覆盖onLayout 方法来做你想做的事。

【讨论】:

感谢您的回复。但是,当TableLayout 的绝对位置发生变化时,似乎不会调用被覆盖的onLayout 方法。 如果覆盖TableLayout 的父级的onLayout 会怎样? 感谢此次更新。我试过了,但我没有工作。然后我意识到TableLayout 的父级是ScrollView,因此我查看here 和here 以在用户滚动ScrollView 时不断获取TableLayout 的绝对位置。

以上是关于跟踪 TableLayout 的位置?的主要内容,如果未能解决你的问题,请参考以下文章

C#怎么清空datagridview 里显示的数据 而不把内存中tablel里的数据清空

在android中跟踪相对于LinearLayout的滚动tableRows

慕课网/安卓攻城狮视频学习及练习

android:TableLayout表格布局详解

TableLayout - 删除列之间的空间

TableLayout(表格布局)