![](/img/trans.png)
[英]How clear gallery thumbnails after deleting image from DCIM in Android
[英]how to update thumbnails preview of android gallery after image edited
可能重復
我有關於內置畫廊的android中縮略圖更新的問題。 實際上,我已經打開,編輯並保存了在圖庫中選擇的圖像。
我打開離開圖庫,然后再次打開圖庫,然后該圖像的縮略圖不會更新。 但是,我選擇圖像,它確實是編輯版本。
有人對此有解決方案嗎? 我已經搜索了,但是我得到了有關使用sendBroadcast()
刷新圖庫的答案,該似乎無法更新圖像預覽。
編輯
我不想刪除現有文件,因為假設用戶要使用其他名稱保存文件,則該文件不受影響
我找到了解決此問題的方法,在請求新縮略圖之前,您需要刪除舊縮略圖。 為此使用MediaStore和ContentResolver
private static void removeThumbnails(ContentResolver contentResolver, long photoId) {
Cursor thumbnails = contentResolver.query(Thumbnails.EXTERNAL_CONTENT_URI, null, Thumbnails.IMAGE_ID + "=?", new String[]{String.valueOf(photoId)}, null);
for (thumbnails.moveToFirst(); !thumbnails.isAfterLast(); thumbnails.moveToNext()) {
long thumbnailId = thumbnails.getLong(thumbnails.getColumnIndex(Thumbnails._ID));
String path = thumbnails.getString(thumbnails.getColumnIndex(Thumbnails.DATA));
File file = new File(path);
if (file.delete()) {
contentResolver.delete(Thumbnails.EXTERNAL_CONTENT_URI, Thumbnails._ID + "=?", new String[]{String.valueOf(thumbnailId)});
}
}
您可以從其URI獲取photoId,從文件名獲取URI,只需創建File並從中解析URI
Uri uri = Uri.fromFile(file);
兩個建議。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.