如何从ListView获取所有子项(可见和不可见)?

Vig*_*Vig 6 android children android-listview android-view

我的问题类似于ListView getChildAt为可见子项返回null,但尽管搜索我找不到解决方案.

我有ListView一个Scroll.在ListView具有10个项目,其中7是可见的和3通过滚动隐藏.我还有一个外部方法(在适配器之外)必须从中获取所有的孩子ListView(例如使用getChildAt()).

我需要所有10个项目,但最后3个是null对象.我尝试过如下代码:

getListView().smoothScrollToPosition();
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

我认为我不需要发布我的其余代码,因为描述说明了一切?

Luk*_*rog 4

正如您已经看到的,您无法从 a 获取所有子行视图ListView,因为 aListView仅保存可见行的视图(加上一些回收的行,但您无法访问这些行)。执行您想要的操作的正确方法是将任何数据存储在适配器的数据中并从那里检索它。

但 ListView 不会在运行时保留 RadioGroup 的当前值。

我发现您在这方面遇到了一些问题,因此我改编了一些旧代码来构建一个基本示例,您可以在此处找到代码。