【问题标题】:How to stream Images from http into an CursomAdapter(Android)如何将图像从 http 流式传输到 CursomAdapter(Android)
【发布时间】:2012-12-11 15:42:32
【问题描述】:

我有一个 Android 自定义列表视图适配器,

我需要将一些图像流式传输/加载到我的自定义行布局/ImageView 中。

所以我尝试了:

myImageView.setImageBitmap(BitmapFactory.decodeFile(o.getIcon_url()));

喜欢下面的这段代码。

public View getView(int position, View convertView, ViewGroup parent) {
       View v = convertView;
       if (v == null) {
            LayoutInflater vi = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            v = vi.inflate(R.layout.row_applications, null);
       }
       ApplicationsModel o = items.get(position);
       if (o != null) {
            ImageView tv_icon = (ImageView) v.findViewById(R.id.iv_icon);
            if(row_icon !=null)
            {              
                  tv_icon.setImageBitmap(BitmapFactory.decodeFile(o.getIcon_url()));
            }
       }
       return v;
}

但图像无法在我的自定义列表视图中阅读。

该代码适用于 TextView 的..

【问题讨论】:

    标签: android imageview adapter bitmapfactory


    【解决方案1】:

    imageLoader.DisplayImage("URL_you_image", YOUimageIcon);

    嗯,我正在使用这个源 https://github.com/thest1/LazyList 效果很好,异步加载图像;)

    【讨论】:

      【解决方案2】:

      看起来@Max_Usanin 在这里有正确的答案。我留下另一个答案来解释为什么它现在不起作用。

      您需要在BitmapFactory 中使用它们之前下载图像。您使用的方法只能用于本地文件,不能用于 url。 See this link.

      此外,您确实想异步下载图像,LazyList 就是这样做的。在将另一个位图加载到您的ListView 之前等待每个位图下载太冒险并且可能需要很长时间。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-06-23
        • 2013-05-11
        • 2013-01-22
        • 2023-03-26
        • 2012-05-24
        • 1970-01-01
        相关资源
        最近更新 更多