好的,我知道這是一個很奇怪的問題,但這是一個非常奇怪的問題。Android Java File.delete()刪除文件,然後刪除文件
我正在做的是一個筆記記錄應用程序,基本上用戶可以創建筆記本,然後在每個筆記本中記錄。我遇到的問題是刪除說明。
活動層次:圖書(主要活動) - >圖書 - >注意
基本上當你刪除一個音符(這是從注做過的事情),則說明活動完成後,和書調用一個的onResume()通過筆記本文件夾查看,並將所有筆記重新加載到ListView中。奇怪的是,當筆記活動結束時,您無法在書籍活動中看到筆記。但是,如果您重新加載它(轉到圖書然後返回),或者執行任何操作來調用該方法來刷新,那麼便會再次顯示所有數據。
這裏是我以前刪除的筆記代碼:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Are You Sure?");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
File note = new File(Path);
if(note.delete()) {
finish();
} else {
Snackbar.make(edt_note, "An Error Occurred", Snackbar.LENGTH_LONG).setAction("Action", null).show();
}
}
});
builder.setNegativeButton("Cancel", null).create();
builder.show();
note.delete()返回true時運行。
作爲旁註,我有權刪除這些本地文件夾。要刪除的筆記本電腦的代碼運行就像一個魅力:
final AppCompatActivity This = this;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Are You Sure?");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
File folder = new File(getFilesDir().getPath() + File.separator + Name);
File[] notes = folder.listFiles();
for(File note : notes) {
note.delete();
}
if(folder.delete()) {
finish();
} else {
Snackbar.make((ListView) This.findViewById(R.id.list_notes), "An Error Occurred", Snackbar.LENGTH_LONG).setAction("Action", null).show();
}
}
});
builder.setNegativeButton("Cancel", null).create();
builder.show();
我真的難倒就這一個,任何幫助,將不勝感激。
編輯:
它不會讓我選擇我自己的答案是解決了,但我想它了。下面的細節。
這與實際問題略有無關,但您使用的是Android版本?他們是否認真地改變了曾經被稱爲「烤麪包片」的東西或者是其他的東西? – Arc676
@ Arc676 Android 4.0。我不知道Toast是什麼,但Snackbar在屏幕的最底部是一種彈出式的東西。 – ThatJavaScriptGuy
吐司是完全一樣的東西。重命名這樣一個基本的類...這必須帶來兼容性問題。 – Arc676