繁体   English   中英

编辑图像后如何更新android画廊的缩略图预览

[英]how to update thumbnails preview of android gallery after image edited

可能重复

使用MediaScanner刷新缩略图

我有关于内置画廊的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);

两个建议。

  • 尝试getThumbnail 我希望从javadoc中重新生成最新的缩略图。
  • 如果那不能更新缩略图,请尝试删除缩略图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM