如何使用通用图像加载器在本地加载资源

14
我想知道如何使用 nostra13/Android-Universal-Image-Loader 在ViewPager中显示来自本地即drawable文件夹的图片,并配合Memorycache使用。非常感谢您提供任何帮助。

请尝试阅读此问题及其答案:https://dev59.com/Y3RB5IYBdhLWcg3wtZMV - thepoosh
2个回答

35

要加载来自assets和drawables的图像,您应该从示例项目中获取ExtendedImageDownloader(此类尚未成为库的一部分),并将其设置为配置。

更新:UIL v1.8.0以来,加载本地资源(来自drawable、assets、content provider)已经可以直接使用了。

请参见README

String imageUri = "assets://image.png"; // from assets
String imageUri = "drawable://" + R.drawable.image; // from drawables (only images, non-9patch)

注意: 仅在确实需要时才使用 drawable://! 总是考虑使用本地方式加载drawable - ImageView.setImageResource(...) 而不是使用 ImageLoader


ExtendedImageDownloader在哪里?我正在使用带有sources.jar的1.8.4版本。 - moDev
2
自1.8.0版本开始,从资源加载已经可以直接使用。 - nostra13
你能否回答这个问题 - moDev
请检查以下问题:https://dev59.com/XXXYa4cB1Zd3GeqP4EFo - marienke
@NOSTRA可以在通用图像加载器上使用gif图片作为默认图片。我尝试了Glide.with(context).load(R.drawable.load1).asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE).crossFade().into(imgaeview); 如果不支持,我们该怎么做呢?请帮助我们,先生。 - Htut
不支持GIF。不会支持。 - nostra13

1

每当有多张图片从资源中动态加载(@运行时),则优先考虑以下内容:

String imgUri = "drawable://" + getResources().getIdentifier(imgName, "drawable", getActivity().getPackageName());

这里,imgName = 资源中图像的名称。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接