![](/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.