我从listview/getChildAt方法得到了一些奇怪的行为.
我有一个HashSet,iconsToUpdate,已在数据库中更改过的图标.我想迭代可见行,看看是否需要更新任何图标以反映新图标.我不需要测试当前不在视图中的图标,因为它们在渲染时将被正确绘制.
我的问题是getChildAt在看起来不应该返回null.我知道getChildAt只能返回当前可见的视图,但是对于某些可见行,它返回null.
这是我的代码迭代可见行:
Logger.debug("First visible index: " + f_listView.getFirstVisiblePosition());
Logger.debug("Last visible index: " + f_listView.getLastVisiblePosition());
for (int i = f_listView.getFirstVisiblePosition(); i <= f_listView.getLastVisiblePosition(); i++) {
String tag = "asdf"; // Remove when bug is fixed.
if (f_listView == null) {
Logger.debug("f_listView is null");
} else if (f_listView.getChildAt(i) == null) {
Logger.debug("Child at index " + i + " is null");
} else {
tag = (String) f_listView.getChildAt(i).getTag();
Logger.debug("Successful at index " + i + ", tag is: " + …Run Code Online (Sandbox Code Playgroud) 我怎么能得到一个项目的所有孩子ListView?
有一些方法可以让孩子到位,但是我无法找到任何方法来返回项目中所有孩子的集合ListView.
更新:我刚刚发现我需要ListView项目(行).我怎么能实现这个目标?
我正在做的是,将所选ListView项目与所有项目进行比较.