如何解决列表视图中的这个错误?
Posted
技术标签:
【中文标题】如何解决列表视图中的这个错误?【英文标题】:How to solve this bug in listview? 【发布时间】:2021-11-18 04:29:30 【问题描述】:我正在为 android 制作文件管理器,但在列表视图中显示文件和文件夹时遇到问题。我得到重复的文件夹和文件名,但是当我单击继续在文件夹中时,ArrayList 会正确返回名称。我的代码:
public void loadFiles(String path)
listmap.clear();
array.clear();
FileUtil.listDir(path, array);
int position = 0;
String currentlyPath = path;
text_currently_path.setText(currentlyPath);
for(int rep=0; rep< (int)(array.size()); rep++)
HashMap<String, Object> item = new HashMap<>();
item.put("path", array.get(position));
listmap.add(item);
position++;
listview_files.setAdapter(new ListViewAdapter(listmap));
我想知道是否可以解决此问题。非常感谢任何回答的人!
【问题讨论】:
请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:问题很可能是 ListView 适配器回收了项目视图,但由于某种原因没有重新初始化它们。这就是您看到重复文件和文件夹的原因:项目视图显示的文件名超出了列表的可见部分,并且被错误地重复用于表示另一个文件。
【讨论】:
以上是关于如何解决列表视图中的这个错误?的主要内容,如果未能解决你的问题,请参考以下文章
如何解决Outlook配置用户邮箱 “该名称不能与地址列表中的名称匹配”错误
如何解决 Oracle Apex 中的“无法使用 DISTINCT、GROUP BY 等从视图中选择 FOR UPDATE”错误?