Android列表文件在文件更改时未刷新
问题描述:
我的应用程序有一个ListActivity让用户从listFiles()生成的列表中选择一个文件。Android列表文件在文件更改时未刷新
File f=null;
File[] files = null;
f= new File(BOOKPATH);
files = f.listFiles();
item = new ArrayList<String>();
for(int i=files.length-1; i >= 0; i--){
File file = files[i];
item.add(file.getName());
}
它运作良好,而当一个条目的用户点击,活动启动,则用户可以编辑该文件。 当用户退出编辑活动时,编辑后的内容将以新名称保存在新文件中,并且第一个选定文件将被删除。
然后再次在第一个Activity的onResume()中调用获取新文件列表的相同代码。
该代码执行得很好,但函数listFiles()返回古代列表,就像缓冲区没有刷新一样。
奇怪的是,当我在android设备上改变方向并且再次调用onResume()时,返回正确的文件列表。
我也尝试通过不同的方式重新开始活动,以获得相同的行为,没有成功。
在此先感谢您的帮助。
答
尝试notifyDataSetChanged()
重新加载列表。
对不起,问题是当调用“files = f.listFiles()”时,返回的数组是错误的。我相信notifyDataSetChanged()用于将适配器反映到视图。请原谅我,如果我误解,谢谢。 – Mokauno 2010-12-05 18:02:54