Я сделал программу, которая заполняет список видео, хранящимися на устройстве, и воспроизводит их. Он также попытался реализовать функциональность удаления файла с помощью функции file.delete. Однако после использования функции notifydatasetchange() файл по-прежнему отображается в списке. Более того, я только что заметил, что видеофайл был удален из папки DCIM; однако он отображается в галерее устройства, но когда вы щелкаете по нему, его нельзя воспроизвести. Вот часть кода, где я показываю диалоговое окно пользователю, когда пользователь нажимает «Да», затем выполняется функция удаления.
DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
switch (which){
case DialogInterface.BUTTON_POSITIVE:
file.delete();
adapter.notifyDataSetChanged();
//list.setAdapter(adapter);
break;
case DialogInterface.BUTTON_NEGATIVE:
image2.setImageResource(R.drawable.play);
flag.setText("play");
//No button clicked
break;
}
}
};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("This Item will be Deleted\nAre you sure?").setPositiveButton("Yes", dialogClickListener)
.setNegativeButton("No", dialogClickListener).show();
}// else closes
Я не понимаю, почему это происходит. Любые полезные предложения, пожалуйста...