2

我正在尝试显示 Twitter 列表中的个人资料图片。我有一个与异步任务一起使用的列表视图。我的 ImageView 是在 URL 的可绘制对象中动态完成的。它似乎在 2.3.3 上工作正常,但图像没有在 4.0 上显示。我 ImageView 必须在 4.0 上工作。我很困惑。这是我的适配器:

    Tweet o = tweets.get(position);
               Drawable drawable = LoadImageFromUrl.LoadImageFromWebOperations(o.profile_image_url);
               image.setImageDrawable(drawable);

将 URL 转换为 drawable 的方法是这样的:

public static Drawable LoadImageFromWebOperations(String url) {
        try {
            Log.i("URL", url);
            InputStream is = (InputStream) new URL(url).getContent();
            Drawable d = Drawable.createFromStream(is, "src name");
            return d;
        } catch (Exception e) {
            return null;
        }
    }

我的列表项(推文)的 xml 布局在这里:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="8dip" xmlns:android="http://schemas.android.com/apk/res/android">

 <ImageView
    android:id="@+id/profile_image"
     android:layout_width="48dip"
    android:layout_height="48dip"
    android:layout_gravity="top|left"
    android:layout_margin="6dip"
    android:contentDescription="Profile Image"
    android:src="@drawable/ic_launcher"/>

<!-- Name -->
<TextView
    android:id="@+id/name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/profile_image"
    android:paddingBottom="1dip"
    android:textColor="#0598DD"
    android:textSize="14dip"
    android:textStyle="bold" />

<!-- Screen name -->   
<TextView
    android:id="@+id/screen_name"
    android:layout_below="@id/profile_image"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/name"
    android:paddingBottom="1dip"
    android:textColor="#ffffff"
    android:textSize="14dip"
    android:textStyle="italic" />

 <!-- Tweet -->
<TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/name"
    android:paddingBottom="1dip"
    android:textColor="#ffffff"
    android:textSize="16dip"
    android:textStyle="bold" />

<!-- date -->

<TextView
    android:id="@+id/time_stamp"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/text"
    android:paddingBottom="3dip"
    android:textColor="#0598DD"
    android:textSize="14dip"
    android:textStyle="italic" />
</RelativeLayout>
4

1 回答 1

0

没有人回应。我通过使用 UrlImageViewHelper 解决了这个问题:

UrlImageViewHelper.setUrlDrawable(image, o.profile_image_url);
于 2012-12-29T19:15:11.780 回答