【问题标题】:Load drawable from arraylist using Lazy Image Loader or Universal Image Loader使用 Lazy Image Loader 或 Universal Image Loader 从 arraylist 加载 drawable
【发布时间】:2014-02-12 03:25:51
【问题描述】:

我只是想问一下,是否可以使用 Lazy Image Loader 或 Universal Image Loader 从arrays.xml 中的arraylist 加载drawable?

首先加载drawable的arraylist

....

ArrayList<Integer> sample_list = new ArrayList<Integer>();

....

Resources resources = getResources();
String packageName = getApplication().getPackageName();
final String[] extras = resources.getStringArray(R.array.sample);

    for (String extra : extras) {
       int res = resources.getIdentifier(extra, "drawable", packageName);
       if (res != 0) {
           sample_list.add(res);
    }
}

将drawable设置为imageview

imageView.setImageResource(sample_list.get(position));

上次我用的像上面一样,但是我想用 Lazy Image Loader 或者 Universal Image loader

我不使用任何网址来加载图片

那可能吗?

如果可能的话,有样品吗?

【问题讨论】:

    标签: android android-drawable universal-image-loader


    【解决方案1】:

    这个方法不推荐在drawable中加载图片...你应该使用native方法

    既然你使用arraylist,如果你保存图像名称ID,你可以像这样使用

    String imageUri = "drawable://" + R.drawable.image;

    (这里 this.R.drawable.image 将是你的数组列表值。

    注意:来自:https://github.com/nostra13/Android-Universal-Image-Loader 如果您想显示可绘制的图像,他们建议使用本机方法

    imageview.setImageResources(res id);
    

    【讨论】:

    • 但我想从包含大量可绘制对象的数组列表中设置图像。目前我正在使用 CustomAdapter 来显示它,但这会占用大量内存......所以这是不可能的?
    • 你可以使用图片 uri。我更新了我的ans,为此使用 imageloader 有什么必要?
    • 所以我需要从arraylist 中定义我所有的drawable?我可以像 String imageUri = "drawable://" -- 根据它的位置从 arraylist 中获取 id -- 吗?
    • 先告诉我使用 imageloader 显示可绘制图像的需要是什么?
    • 正如我之前所说,我尝试使用 ArrayAdapter 进行显示,但加载速度很慢,即使我已经将可绘制对象解码为位图。我正在尝试显示很多可绘制对象,所有可绘制对象的分辨率都只有 96x96 像素。我只是想另辟蹊径
    猜你喜欢
    • 2020-03-24
    • 1970-01-01
    • 1970-01-01
    • 2019-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-11
    相关资源
    最近更新 更多