Potrzebuję usunąć obraz z karty SD wybranej przez użytkownika. W mojej działalności, po użytkownikowi wybrać zdjęcie z galerii, i wykonać ten kod:Android: usuń obraz z karty SD
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == SELECT_PICTURE) {
Utils.imgUri = data.getData();
Utils.imgPath = getPath(Utils.imgUri);
File file = new File(Utils.imgPath);
boolean deleted = file.delete();
}
}
}
gdzie getPath metoda jest:
public String getPath(Uri uri) {
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(uri, projection, null, null, null);
if(cursor!=null){
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
else return null;
}
Obrazy są prawidłowo usunięty, ale w galeria nadal pozostaje podglądem usuniętego obrazu. Po dotknięciu, zostanie załadowany czarny obraz.
. Jak mogę zaktualizować podgląd galerii po usunięciu niektórych zdjęć z kodu aplikacji?
Nie działa. Pozostawia obraz w galerii. Instrukcje niejasne powyżej, dodałem twoją linię natychmiast po file.delete(); funkcja jest wywoływana. Jeśli jest to poprawne, kod nie działa zgodnie z przeznaczeniem. – Bisclavret
Super..works like a Charm ... + 1 głosuj –