1
我的應用程序有一個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()時,返回正確的文件列表。
我也嘗試通過不同的方式重新開始活動,以獲得相同的行爲,沒有成功。
在此先感謝您的幫助。
對不起,問題是當調用「files = f.listFiles()」時,返回的數組是錯誤的。我相信notifyDataSetChanged()用於將適配器反映到視圖。請原諒我,如果我誤解,謝謝。 – Mokauno 2010-12-05 18:02:54