跟进:重建容器列表而不滚动列表

时间:2017-01-16 10:56:07

标签: codenameone

请参阅Shai Almog的这个问题和答案: Rebuild list of containers without scrolling the list

我有一个带有一个容器(TableLayout)的表单,其中包含多个带有标签和按钮的行。单击按钮可更改行的顺序并重建整个表单(在myForm.removeAll()之后)。在myForm.revalidate()之后,表单会跳到顶部。

我正在尝试实现这种确切的行为,在重新验证/更改容器内容后返回到同一点(滚动位置Y)。

我将Container类子类化,使setScrollY(int)可见。使用具有任意值的值不会滚动到该位置,因此setScrollY方法似乎不会整体更改内容窗格的滚动位置。

myContainer.getScrollY()始终返回“0”。我只通过调用getContentPane().getScrollY()获得滚动位置。

但显然无法在内容窗格上调用setScrollY() - 方法 - 因为无法对内容窗格进行子类化 - 在重新验证表单后回滚到相同的位置。

感谢您的任何建议!

1 个答案:

答案 0 :(得分:1)

使用边框布局禁用滚动窗体/内容窗格。

将您的容器(您展示的地方setScroll)放在中心,并确保在setScrollableY(true)上调用Container