1

私はAndroidカスタムリストビューアダプターを持っています、

一部の画像をcustom-row-layout/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で動作します。

4

2 に答える 2

1

imageLoader.DisplayImage( "URL_you_image"、YOUimageIcon);

hm私はこのソースを使用していますhttps://github.com/thest1/LazyListはうまく機能し、画像を非同期でロードします;)

于 2012-12-11T15:48:35.783 に答える
1

@Max_Usaninがここで正しい答えを持っているように見えます。私はそれが今機能していない理由を説明するために別の答えを残しています。

で使用する前に、画像をダウンロードする必要がありますBitmapFactory。使用しているメソッドは、URLではなくローカルファイルにのみ使用できます。このリンクを参照してください。

また、本当に非同期でイメージをダウンロードしたいのですが、そう見えますLazyList。別のビットマップをにロードする前に、各ビットマップがダウンロードされるのを待つのは非常にリスクが高く、場合によっては時間がかかりすぎるでしょうListView

于 2012-12-11T15:57:05.680 に答える