android - Universal Image Loader 从内存中加载位图

标签 android bitmap universal-image-loader

Universal Image Loader 提供了多种加载图片的方式。

"file:///mnt/sdcard/image.png" // from SD card
"file:///mnt/sdcard/video.mp4" // from SD card (video thumbnail)
"content://media/external/images/media/13" // from content provider
"content://media/external/video/media/13" // from content provider (video thumbnail)
"assets://image.png" // from assets
"drawable://" + R.drawable.img // from drawables (non-9patch images)

但是所有这些加载图像表单文件的方式,我需要一种从内存加载的方法,因为我的图像被加密并存储在 Assets 文件夹中,当我显示此图像时,我需要以下步骤。

  1. 将图像解密为字节数组。
  2. 从字节创建位图。
  3. 加载/显示图像。

原来是这样的。这可能吗?

Bitmap bitmap = decrypt(encryptedImageFile);
imageLoader.displayImage(bitmap, imageView);

目前,我正在考虑将位图保存到文件并加载文件,但这需要更多时间。

最佳答案

我相信下面是你正在寻找的如果你的图像存储在 Assets 目录的图像文件夹中,那么你可以获得图像列表

  private List<String> getImage(Context conetx) throws IOException { 
      AssetManager assetManager =conetx.getAssets();
      String[] files = assetManager.list("image");   
      List<String> it=Arrays.asList(files);
      return it; 
  } 

请注意,不要使用 Assets 目录,而是将文件放入/res/raw,然后您可以使用以下 URI 访问它

android.resource://com.your.packagename/" + R.raw.<nameoffile>

关于android - Universal Image Loader 从内存中加载位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29023303/

相关文章:

java - UIL 默认不支持 scheme(protocol)

android - 位图太大而无法上传到纹理(通用图像加载器)

java - 创建自定义listView android时如何存储复选框的值

html - CSS/HTML 是如何在浏览器中呈现的?

Android:为 froyo 及更高版本开发,希望禁用平板电脑支持

c++ - 自定义按钮形状

c++ - 无法使用 winapi 获取资源位图大小

android - Universal-Image-Loader 中的任务被中断

java - SharedPreferences 不保存文本值

java - 如何等待多个 Volley 请求完成?