0

我有一个表格布局,它在一行中包含 2 个文本视图。我所有的行都是通过活动动态添加的,我的表在滚动视图中。因此,随着行的添加,表格会逐步向上滚动。

我还能够维护来自 tablelayout 的所有创建和添加的行 ID。

我想跳回到用户指定的行号。假设,用户给出 5 作为行号。所以,我的表格应该在第 5 行向上滚动,这样行就会出现在屏幕视图中,并且用户可以看到第 5 行的内容。

我从 2 天开始徘徊以获得解决方案,但没有得到任何方法来实现这一点。

有没有人有解决方案?

4

2 回答 2

1

让它滚动调用TableRow.requestRectangleOnScreen()(用代码中的实际 TableRow 对象替换“TableRow”)。

您可以对矩形坐标使用任何东西(如 0,0,0,0),但我相信使用类似的东西Rect(0, 0, TableRow.getWidth(), TableRow.getHeight())可以确保滚动整行,使其完全显示在屏幕上。

实际上任何 View 对象requestRectangleOnScreen()都支持所以玩弄它。

于 2011-04-18T17:44:48.720 回答
0
 Rect rectangle=new Rect();
 row.getDrawingRect(rectangle);
 row.requestRectangleOnScreen(rectangle);

经过测试,它正在工作。感谢@CR

于 2018-07-16T12:49:35.043 回答