快速查询ImageLoader DisplayImage函数

时间:2017-02-26 22:22:36

标签: android universal-image-loader

我对Universal Image Loader库中的DisplayImage函数有疑问。如果我有一个像“www.myexample.com/image.jpg”的网址,然后说:

DisplayImageOptions defaultOptions = new DisplayImageOptions.Builder()
    .cacheInMemory(true)
    .build();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())
    .defaultDisplayImageOptions(defaultOptions)
    .build();
ImageLoader.init(config);
String url= "www.myexample.com/image.jpg";
ImageLoader.getInstance().DisplayImage(url, imageviewexpample);

我有以下问题:

  1. 图像加载器首次下载并将位图保存在缓存中,然后下次从缓存加载吗?或者我可能要做一些事情,以便下次从缓存中加载它。
  2. 是“url”参数我传递了ImageLoader用于保存chache的密钥?如果没有,我怎么知道密钥,以便我可以分开从缓存中检索图像。
  3. 如果不在这里询问,我怎么知道这些问题的答案?我的意思是,有没有像我可以使用的Android API这样的文档?我不得不阅读图书馆的所有代码吗?

1 个答案:

答案 0 :(得分:2)

  1. 是的,使用这些选项(cacheInMemory(true))图像将保存在内存缓存中。 UIL还可以将它们保存到设备的外部存储设备中以“缓存”。他们。 我估计缓存的大小是有限的,所以你可能无法保证 每个图像都被缓存,但这是一个猜测。见3.
  2. 否。请参阅this question
  3.   

    我的意思是,有没有像我可以使用的Android API这样的文档?

    在这种情况下,是的,该库非常好documented。该项目的Github页面将是我检查信息的第一个地方(也请查看问题页面)。其他一些图书馆也可能没有被记录,那么Google和SO会有所帮助。自己查看源代码可能会也可能不是一个很好的选择,具体取决于你有多少时间。对于像UIL这样广泛使用的图书馆的大多数常见问题,它不是必要的,但仍然可以带来回报。