我在 Android (JB) 应用程序中有一个列表视图,单击一行会将列表视图替换为另一个视图。
按下单独的按钮,将列表视图添加回活动(想法是父容器在列表视图和单行的内容之间切换)。
当我滚动到靠近底部的一行并按下它(以替换列表视图)时,就会出现问题。点击另一个按钮再次显示列表视图后,一切看起来都很好(包括行状态和滚动位置)。但是一旦我再次尝试滚动,它会将列表视图重置为顶部。之后滚动正常工作。
列表视图的数据源根本没有改变。奇怪的是,如果我更改平板电脑的方向,那么第一次滚动不会将列表视图重置到顶部。
我猜它与删除视图然后添加回相同的视图有关(这是通过在父级上调用 removeAllViews 和 addView 来完成的)。