У моего приложения есть ListActivity, чтобы пользователь мог выбрать файл из списка, сгенерированного listFiles().Android listfiles не обновляется при изменении файлов
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());
}
Он хорошо работает, и когда пользователь нажимает на запись, деятельность запускается, то пользователь может редактировать файл. Когда пользователь завершает действие редактирования, отредактированный контент сохраняется в новом файле с новым именем и удаляется первый выбранный файл.
Затем тот же код для получения нового списка файлов вызывается снова в onResume() первого действия.
Код хорошо выполнен, но функция listFiles() возвращает древний список, например, если буфер не обновлялся.
Странно, что верный список файлов возвращается при изменении ориентации на устройстве Android, а onResume() вызывается снова.
Я также попытался перезапустить действие различными способами, чтобы получить такое же поведение, без каких-либо успехов.
Заранее благодарим за помощь.
Извините, проблема в том, когда вызывается «files = f.listFiles()», возвращаемый массив неверен. Я считаю, notifyDataSetChanged() используется для отображения адаптера для представления. Пожалуйста, извините меня, если я неправильно понимаю, спасибо. – Mokauno 2010-12-05 18:02:54